我只是想知道我应该如何构建一个 bookManager 。他所遵循的模型
|-------------|1---------*|-------------|
| Customer | | BookManager |
|-------------| |-------------|
| ID | | ID |
| First | | customer_id |
| Last | | isDeleted |
| Email | | isVisible |
| Password | | description |
|-------------| |-------------|
关联如下
class Customer < ActiveRecord::Base
# RELATIONSHIP
has_many :book_managers
accepts_nested_attributes_for :book_managers, allow_destroy: :true
attr_accessible :admin, :first_name, :last_name, :middle_name, :email, :email_confirmation, :password, :password_confirmation, :image, :book_managers_attributes, :locale
end
class BookManager < ActiveRecord::Base
belongs_to :customer
attr_accessible :customer_id, :visible, :description
end
表单就像这样 Customer#edit 视图
<h3>Book</h3>
<div><%= render 'book_managers/form' %></div>
BookManagers/表格
<%= form_for(@book_manager) do |f| %>
<fieldset>
<%= f.label :description %>
<%= f.text_field :description %>
</fieldset>
<fieldset>
<%= f.check_box :visible %>
<%= f.label :visible %>
</fieldset>
<div class="actions">
<%= f.submit %>
</div>
这是大奖的难题。控制器 目前我在 BookManager 控制器中什么都没有,因为它的调用者往往拥有数据信息。但我真的对客户控制器感到困惑。
我想要的是关联并填写 BookManager 与客户及其属性。这就是我现在所拥有的。
客户控制器
@customer = Customer.find(params[:id])
# @book_manager = BookManager.new
# bm = @customer.book_managers.build
# bm.books.build
@book_manager = @customer.book_managers.build