Вопрос: Как мне добиться дизайна модели ниже, используя ActiveAdmin и Devise 2?
Я успешно настроил active_admin с существующей моделью User
для ее начальной загрузки.
Я предположил, что это означает, что дизайн модели («Пусть администраторы управляют пользователями»).
Вот моя текущая модель:
irb(main):003:0> User.column_names
=> ["id", "created_at", "updated_at", "avatar", "name"]
irb(main):004:0> AdminUser.column_names
=> ["id", "email", "encrypted_password", "reset_password_token", "reset_password_sent_at", "remember_created_at", "sign_in_count", "current_sign_in_at", "last_sign_in_at", "current_sign_in_ip", "last_sign_in_ip", "created_at", "updated_at"]
Теперь я хотел бы добавитьнекоторая аутентификация для моей модели User.Однако я не могу перенести результаты rails generate devise User
без этого конфликта:
== AddDeviseToUsers: migrating ===============================================
-- change_table(:users)
-> 0.7201s
-- add_index(:users, :email, {:unique=>true})
rake aborted!
An error has occurred, this and all later migrations canceled:
PG::Error: ERROR: could not create unique index "index_users_on_email"
DETAIL: Key (email)=() is duplicated.
: CREATE UNIQUE INDEX "index_users_on_email" ON "users" ("email")
Tasks: TOP => db:migrate
Теперь у меня нет атрибута email
в моей текущей модели User, но AdminUser делает.Поэтому, когда Devise пытается создать атрибут электронной почты в User
, я подозреваю, что именно поэтому я получаю эту ошибку.Но почему?Они в разных моделях?
Любая помощь, например, опыт, сообщения или учебные пособия будет оценена (а также ответ)
ПРИМЕЧАНИЕ Я пробовал решение, найденное наВики для разработки и здесь , безуспешно при миграции.