'attr_accessible' эффекты - PullRequest
       14

'attr_accessible' эффекты

1 голос
/ 18 августа 2011

Я использую Ruby on Rails 3.0.9, и я хотел бы знать, в каких случаях (то есть для каких методов) действует метод attr_accessible.Например, если я использую

attr_accessible :name, :surname

, он не будет присваивать значения этих атрибутов при использовании метода new(...) для оператора User.new(params[:user]).

Но чтодругие методы, о которых он позаботится? Можно ли правильно запустить, например, методы как where(...) и exists?(...), без которых attr_accessible вступит в силу?

Ответы [ 2 ]

3 голосов
/ 18 августа 2011

Если вы используете attr_accessible, модель предотвратит массовое назначение тех столбцов, которые не включены в список attr_accessible.Затрагиваются следующие методы: mass assignment, такие как new, create, update_attributes, attributes= и т. Д. Все остальные функции будут работать, даже одно назначение, например:

@model_object.column_not_listed_in_attr_accessible_list = "Saved"
@model_object.column_not_listed_in_attr_accessible_list
=> "Saved"

Итак,не должно быть никаких проблем с их использованием в where, exists? и т. д.

2 голосов
/ 18 августа 2011

attr_accessible влияет только на функции, связанные с операциями записи.

Пример: new, create, update_attributes и т. Д.

Другие функции, доступные только для чтения, например, где, существует? И т. Д. Не должны оказывать никакого влияния.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...