1

我想在我的应用程序 AdminUsers 和普通用户中。最好的方法是什么?

我尝试的是这个。我从一个全新的 Rails 应用开始

rails new testadmin

将 ActiveAdmin 添加到 Gemfile

gem 'activeadmin'
gem 'sass-rails'
gem "meta_search",    '>= 1.1.0.pre'

并生成管理界面

rails generate active_admin:install

然后按照外壳提供的说明进行操作。

我现在在 ActiveAdmin 中有 AdminUsers。然后我为设计生成了一个用户模型:

rails generate devise User
rake db:migrate

并将其添加到管理界面

rails generate active_admin:resource User

这似乎可行,因为我现在有一个带有过滤器的精美用户页面,并且能够添加新用户,但是每当我尝试添加它(设置电子邮件和密码)时,我都会收到以下异常:

ActiveModel::MassAssignmentSecurity::Error in Admin::UsersController#create

Can't mass-assign protected attributes: encrypted_password, reset_password_token, reset_password_sent_at(1i), reset_password_sent_at(2i), reset_password_sent_at(3i), reset_password_sent_at(4i), reset_password_sent_at(5i), remember_created_at(1i), remember_created_at(2i), remember_created_at(3i), remember_created_at(4i), remember_created_at(5i), current_sign_in_at(1i), current_sign_in_at(2i), current_sign_in_at(3i), current_sign_in_at(4i), current_sign_in_at(5i), last_sign_in_at(1i), last_sign_in_at(2i), last_sign_in_at(3i), last_sign_in_at(4i), last_sign_in_at(5i), current_sign_in_ip, last_sign_in_ip

如何得到我所追求的?谢谢

PS:我真的希望他们将 ActiveAdmin 和 Devise 添加为标准,像 Django 这样的 Rails 开箱即用组件有它的管理界面和用户模型:/

4

1 回答 1

1

您需要attr-accessibleUser模型中输入。输入这个app/admin/user.rb

form do |f|
  f.inputs do
    f.input :email
    f.input :password
    f.input :password_confirmation
  end
  f.buttons
end

希望这可以帮助

于 2013-02-18T11:21:53.690 回答