我只是尝试创建一个允许我一次创建多个用户的功能,但我有两个错误,我找不到他们的解决方案: 这是我的控制器
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
答案 0 :(得分:1)
解决方案是在这里使用双引号:
"employee#{staff.id}@hu.com"
这解决了我上面的两个问题
答案 1 :(得分:0)
可以添加一个复选框以将单个员工添加到用户模型。当您选中该复选框时,可能会随机用户名和密码被发送到员工电子邮件中?
你不是在问编程问题,而是“能够成就或不能”的东西