Ich habe ein Rails mit ActiveAdmin mit Devise for Authentication. Ich habe Adminbenutzer- und Benutzermodelle, damit das Benutzermodell sich nicht um admin kümmern muss. Ich kann jedoch weder Adminuser noch Benutzer von der Admin-Seite erstellen/bearbeiten. Jedes Mal, wenn ich so versuchen zu tun, es wird mir NachrichtActiveAdmin: Ich kann keine geschützten Attribute massenweise zuweisen: email, password, password_confirmation
Can't mass-assign protected attributes: email, password, password_confirmation
das, weil im Inneren User-Modell und Adminuser Modelle ist seltsam, ich habe schon:
attr_accessible :email, :password, :password_confirmation
es andere Art und Weise zu versuchen, ging ich auf die Schiene und Konsole versuchen, eine Adminuser erstellen und alle arbeiteten:
AdminUser.create(:email => '[email protected]',
:password => 'password', :password_confirmation => 'password')
das bedeutet, nur die Schaffung von der Admin-Web-Seite ist fehlgeschlagen.
Ich benutze Devise für die Authentifizierung. Der Fehler tritt sowohl bei den Benutzer- als auch bei den AdminUser-Modellen auf.
Für Passwort und password_confirmation, habe ich nicht diese Felder in der Datenbank, aber das ist die Art, wie Devise ist standardmäßig, es nie Passwort in der Datenbank. Hier
ist das User-Modell:
devise :database_authenticatable, :registerable, :rememberable, :recoverable, :trackable, :omniauthable, :omniauth_providers => [:facebook]
##, :validatable
# Setup accessible (or protected) attributes for your model
attr_accessible :email, :password, :password_confirmation, :remember_me, :provider, :uid
# attr_accessible :title, :body
validates :email, :password, :first_name, :last_name,
presence: true
validates :email, uniqueness: true
has_many :devices
has_many :posts
vielleicht müssen Sie ": as =>: admin_user" zu Ihrem attr_accessible hinzufügen. Ich weiß es nicht genau für den Edelstein active_admin, aber wenn du zum Beispiel diesen Edelstein https://github.com/fesplugas/typus benutzt, musst du die Rolle des aktuellen Benutzers angeben mit: as =>: admin_user – Mattherick
Ich denke, diese Frage wird Ihnen helfen, das zu verstehen: as => "your-role" besser..http: //stackoverflow.com/questions/6877853/rails-how-to-declare-attr-accessible-for-mutliple- Rollen ohne Duplizierung – Mattherick
Wie sieht Ihr Admin-Erstellungsformular aus? Wenn Sie die Serverprotokolle auflisten, die Ihnen helfen können. –