【问题标题】:Creating multiple users or single user by once [closed]一次创建多个用户或单个用户[关闭]
【发布时间】:2013-12-12 12:01:55
【问题描述】:

我只是尝试创建一个允许我一次创建多个用户的函数,但我有两个错误,我找不到他们的解决方案: 这是我的控制器

def create_multiple
    @staff = Employee.find(params[:employee_ids])
    @staff.each do |staff|
      staff = User.create do |user|
        user.email = 'employee"#{staff.id}"@hu.com'
        user.password = '12345678'
        user.password_confirmation = '12345678'
        user.user_type = 'employee'
      end
    end
    redirect_to staff_path
  end

  def new_multiple
    @staff = Employee.find(params[:employee_ids])
  end

视图(使用复选框选择员工后):

<h5>Create Multiple Users</h5>

<%= form_tag create_multiple_employees_path, method: :post do %>
    <ul>
      <% @staff.each do |employee| %>
          <li>
            <%= hidden_field_tag 'employee_ids[]', employee.id %>
            <%= employee.full_name %>
          </li>
      <% end %>
    </ul>
    <%= submit_tag "Submit Creating User(s)" %>
    <% end %>

这两个问题是:

1- 它只创建一个用户

2- 电子邮件未将其提交的员工 ID 设为employee"#{staff.id}"@hu.com

【问题讨论】:

  • 你的问题太宽泛了。
  • 广泛的问题,但也许这会有所帮助 - railscasts.com/episodes/165-edit-multiple-revised
  • @phoet 为什么在国外?我所要求的只是如何创建用户(通过一次选择一名或多名员工来从员工索引中创建用户
  • @Dexter 也没有正确解释,没有例子,没有代码,什么都没有。
  • @phoet 在尝试立即创建问题后刚刚更新了我的问题

标签: ruby-on-rails ruby-on-rails-3.2


【解决方案1】:

解决方案是在这里使用双引号:

"employee#{staff.id}@hu.com"

这解决了我上面的两个问题

【讨论】:

    【解决方案2】:

    可以添加一个复选框以将单个员工添加到用户模型。当您选中该复选框时,可能会随机发送用户名和密码到员工电子邮件?

    而且您不是在问编程问题,而是在问“是否可以实现”

    【讨论】:

    • 我想要实现的是如何同时为一个员工或所有员工创建帐户,我正在寻找如何制作它
    • 如果您的应用由 Heroku 托管并使用Heroku run rails console,您可以更轻松地使用命令行
    • @Justin 我不是在说控制台!我说的是管理员将使用的功能..
    • 这可能不是您想要的,但请检查一下,也许它会帮助您找到正确的答案。 ruby.railstutorial.org/chapters/…。它让管理员用户在一个页面上销毁所有用户。
    • @Justin 我知道如何限制操作,我的问题再次是:“如果你有一个员工模型并且在视图中你有一个员工列表,我怎么能将他们作为用户添加到我的通过一次选择一个或多个员工的用户模型,(两个模型的属性不同)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-05-30
    • 2012-07-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-21
    • 2018-11-18
    相关资源
    最近更新 更多