Rails关联和新用户注册

时间:2014-02-28 17:55:07

标签: ruby-on-rails ruby associations

我需要在注册表单中有一个下拉列表,用户可以选择他们工作的现有公司,或者将其留空并稍后添加新公司。如何从公司表中获取现有公司以在下拉列表中进行选择,然后在注册时将该公司附加到用户表中?

1 个答案:

答案 0 :(得分:1)

我假设您的用户表有一个company_id字段,而您的用户模型属于belongs_to:company

class User < ActiveRecord::Base
  belongs_to :company
end

在您的注册视图中,您可能正在使用form_for @user

您需要添加select并使用include_blank:true选项来指示可以选择不选择任何公司。

<%= form_for @user do |f| %>
  Other fields
  <%= f.select :company_id, Company.all.collect {|c| [ c.name, c.id ] }, { include_blank: true }) %>
  More stuff
<% end %>