Вы хотите обработать настройку логического значения admin
внутри.Не подвергайте его массовому назначению.
У вашей пользовательской модели по умолчанию для первого пользователя (вас) автоматически назначается администратор.Используйте метод before_create
для этого ...
# models/user.rb
before_create :make_first_user_an_admin
def make_first_user_an_admin
self.admin = self.class.count == 0 # sets true if no users exist, false otherwise
end
Затем используйте метод экземпляра для установки администрирования ...
# models/user.rb
def toggle_admin
self.admin = !self.admin
save
end
охраните этот метод в вашем контроллере ...
# controllers/users_controller.rb
def change_adminship
if current_user.admin
@user.toggle_admin
else
raise "Can't do that."
end
end