@quinton.prosacco
В Ruby on Rails 5 метод attr_accessible больше не используется. Вместо него, в Rails 5 и более поздних версиях, используется метод strong parameters (сильные параметры).
Strong parameters - это механизм, который позволяет контролировать, какие параметры можно принимать из формы или запроса, а какие нет. Он предотвращает возможность атак на массу, при которой злоумышленник может изменить параметры, передаваемые в запросе, и внести несанкционированные изменения в базу данных.
Чтобы использовать strong parameters, вам нужно определить метод private в контроллере и определить разрешенные параметры с помощью метода permit. Например, если у вас есть модель User с атрибутами name и email, вы можете определить разрешенные параметры для создания нового пользователя в методе create контроллера следующим образом:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
class UsersController < ApplicationController def create @user = User.new(user_params) if @user.save # successful save else # unsuccessful save end end private def user_params params.require(:user).permit(:name, :email) end end |
В этом примере мы определяем метод user_params, который разрешает параметры name и email для модели User. Мы используем метод require для указания имени параметра, передаваемого из формы, а затем метод permit, чтобы указать, какие параметры разрешены.
Обратите внимание, что метод user_params должен быть объявлен как private, чтобы он не был доступен извне контроллера.