0

Railcasts のエピソード 196 をフォローしましたが、彼をフォローしてもまだうまくいかないようです。コードが古いか、Rails を取得していない可能性があります。

ここに私は3つのモデルを持っています

Customer        Book                Book_Manager
id              id                  id
first           description         customer_id
last            book_manager_id     visible
email
password

ここに私の関係があります

Book
    belongs_to :book_manager
    def customer
        book_manager.customer
    end
Customer
    has_many :book_managers, :dependent => :destroy
    accepts_nested_attributes_for :book_managers
BookManager
    belongs_to :customer
    has_many :books, :dependent => :destroy
    accepts_nested_attributes_for :books

フォームは次のとおりです

<%= form_for @bookmanager do |f| %>
  <%= f.fields_for :books do |builder| %>
  <div>
    <%= builder.label :description %><br />
    <%= builder.text_area :description, :rows => 3 %>
  </div>
  <% end %>
  <div class="field">  
    <%= f.label :visible %><br />  
    <%= f.text_field :visible %>  
  </div>  
  <div class="actions">
    <%= f.submit %>
  </div>  
<% end %> 

行をコメントアウトすると

accepts_nested_attributes_for :books

説明ボックスが表示されますが、そこに配置するとボックスが消えます。私は何か見落としてますか??

4

1 に答える 1

1

ここで book オブジェクトを渡す必要があると思います。試す

<%= f.fields_for :books, Book.new do |builder| %>
于 2012-08-02T15:54:16.717 に答える