У меня есть приложение Rails 3.2.2, использующее Ruby версии 1.9.2.Я создал базовую аутентификацию для своих пользователей, следуя учебнику по Railscasts.
Мне не нужно ничего сложного, например, запоминать меня или сбрасывать пароль, и я хотел бы получить хорошийПонимание того, что происходит на самом деле, прежде чем я начну изучать использование Devise или чего-то подобного.
На данный момент у меня есть учетные записи пользователей, и я могу проверить, вошел ли пользователь, используя
<% if current_user %>
Поэтому я хотел бы иметь возможность сделать
<% if current_user.admin? %>
Если я использую вышеупомянутую admin?
проверку, я получаю следующую ошибку:
undefined method `admin?'
Насколько я понимаю, вышеприведенные проверкиАдминистратор верен для текущего пользователя.Я добавил в свою пользовательскую таблицу столбец admin, который имеет логическое значение и установил значение по умолчанию = false.
create_table :users do |t|
t.string :name
t.string :initials
t.string :email
t.string :password_digest
t.boolean :admin, :default => false
Я также добавил столбец admin в мой начальный файл, чтобы иметь тестовую учетную запись администратора
User.create(name: 'Danny', initials: 'DAN', email: 'danny@railsapplication.co.uk', password: 'secret', admin: 'true')
Поскольку я добавил пользователя-администратора и проверяю, чтобы логическое значение было истинным, я подумал, что это все, что мне нужно сделать.
Я что-то упустил?