一次创建多个用户或单个用户

时间:2013-12-12 12:01:56

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

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

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

2 个答案:

答案 0 :(得分:1)

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

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

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

答案 1 :(得分:0)

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

你不是在问编程问题,而是“能够成就或不能”的东西