3

我正在使用设计直接从控制台创建用户,因此不使用该:registerable模块。

从控制台创建用户的方法是通过以下方式提供电子邮件、密码和 password_conformation:

User.create(email: 'john@hotmail.com', password: '1234', password_conformation: '1234')

现在我已经安装了 Administrate gem,我希望能够直接从那里创建用户。我已经可以编辑自定义字段并销毁用户,但我不知道如何创建它们,因为 password 或 password_confirmation 都不属于 User 表。有什么想法吗?

4

2 回答 2

2

我将passwordandpassword_confirmation字段添加到仪表板,它就像一个魅力,在我包含了一个带有相关字段的仪表板示例之后。

require "administrate/base_dashboard"

class AdminUserDashboard < Administrate::BaseDashboard

  ATTRIBUTE_TYPES = {
    .
    .
    .
    password: Field::String,
    password_confirmation: Field::String,
    .
    .
    .
  }.freeze

  # FORM_ATTRIBUTES
  FORM_ATTRIBUTES = %i[
  .
  .
  .
  password
  password_confirmation
  .
  .
  .
  ].freeze

end


我对此进行了测试:

Rails 6
设计 4.7.1
管理 0.12.0

于 2020-01-20T13:26:30.100 回答
0

您可以使用devise_invitable

然后你有一个表单来邀请用户Email,用户输入他的password(你设置用户密码不安全)

于 2018-01-16T12:16:02.897 回答