Запретить пользователю редактировать определенные столбцы в таблице в Rails - PullRequest
1 голос
/ 31 марта 2012

У меня есть модель ActiveRecord Appointment, которая включает атрибуты темы и времени.Я хотел бы позволить пользователям иметь возможность изменять время.Но я хочу запретить им изменять тему после того, как это поле заполнено.

Как мне это делать в Rails?Спасибо.

Ответы [ 2 ]

0 голосов
/ 31 марта 2012

Вы должны использовать attr_accessible в вашей модели: http://api.rubyonrails.org/classes/ActiveModel/MassAssignmentSecurity/ClassMethods.html#method-i-attr_accessible

Это будет означать, что при создании вы должны будете вручную установить значение, но при обновлении вы можете использовать массовое назначение, а любое значение нев списке attr_accessible будет игнорироваться.

0 голосов
/ 31 марта 2012

Если вы используете общий партиал между новым и редактируемым представлениями, вы можете условно вывести поле редактирования для рассматриваемых столбцов, если appointment.is_new_record? вернет true. В противном случае просто отобразите их как текст.

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