Что такое слово params.требуется (человек).разрешение (: имя,: возраст) ' делать в Rails 4?


все примеры сильных параметров в Rails 4 docs используют params.require(:person).permit(:name, :age).

кто-нибудь может разобрать и объяснить, что происходит с require и permit здесь?

спасибо!

1 121

1 ответ:

The params в контроллере выглядит как хэш, но на самом деле это экземпляр ActionController::Parameters, который содержит несколько методов, таких как require и permit.

The require метод гарантирует, что определенный параметр присутствует, и если он не указан, то require метод выдает ошибку. Он возвращает экземпляр ActionController::Parameters для ключа, переданного в require.

The permit метод возвращает копию параметры объекта, возвращающие только разрешенные ключи и значения. При создании новой модели ActiveRecord в модель передаются только разрешенные атрибуты.

он очень похож на белый список, который ранее был включен в модели ActiveRecord, но имеет больше смысла, чтобы он был в контроллере.