Я только что установил новый логический атрибут accepted
для моей модели, который выглядит следующим образом:
class Invitation < ActiveRecord::Base
attr_protected :accepted
...
end
Я хочу, чтобы он был личным атрибутом, однако, когда я пытаюсь удалить публичный установщик следующим образом:
class Invitation < ActiveRecord::Base
attr_protected :accepted
private :accepted=
...
end
Я получаю немедленный сбой типа:
invitation.rb:17:in `private': undefined method `accepted=' for class `Invitation' (NameError)
Почему AR не определяет сеттер? Я знаю, что мог бы сделать это, определив метод от руки, но меня интересует, почему я не могу использовать сокращенный маршрут private :accepted=
.