对,你的问题相当广泛,但是我可以在创建一个带有连接到多个模型对象的字段的窗体的正确方向上推动你。关键是在使用fields_for帮手......
要做到这一点,我会做下列..
company.rb
class Company < ActiveRecord::Base
has_many :users
accepts_nested_attributes_for :users
end
user.rb
class User < ActiveRecord::Base
belongs_to :company
end
companies_controller.rb
层
class CompaniesController < ApplicationController
def new
@company = Company.new
@user = User.new
end
def user_params
params.require(:user).permit(:name, companies_attributes:[:name])
end
end
的意见/公司/ new.html.erb
<%= form_for @user do |f| %>
<%= f.label :name %><br />
<%= f.text_field :name %>
<%= fields_for @company do |u| %>
<p>
<%= u.label :name %><br />
<%= u.text_field :name %>
</p>
<% end %>
<p>
<%= f.submit "Submit" %>
</p>
<% end %>
您可以轻松地把它从这里,使之更加复杂,因为你喜欢它。
不应该是一家公司拥有多少用户,而是一家用户属于公司。作为一个公司可以有几个人连接到它(员工),然后分离将使用户有一个管理布尔值来查看谁是该公司的管理员? – user2755537
你是对的,我的不好。更新,并应按照你的需要工作 –
好的,关于管理员权限,我建议你考虑一下cancan的授权。 –