0

这里我有以下模型

客户簿簿_经理

我的协会有关注

BookManager
belongs_to :customer
Customer
has_many :book_managers, :dependent => :destroy

此阶段不需要预订

这是基于 Railscasts 的嵌套模型形式,但我似乎不明白为什么它不起作用。该应用程序应该可以工作

客户进入 customer#edit,然后查看 BookManagers(最后创建的)(如果有)。如果不是,那么只需查看空白和一个表单,以允许他创建一个新的 book_manager,它将在未来与一本书相关联。但我不在那个阶段。

这里是客户控制器

def edit
    @customer = Customer.find(params[:id])
    @bookmanager = BookManager.first_or_create
end

他的渲染文件跟随

<h3>Book</h3>
<div><%= render 'book_managers/form' %></div>

这里是 book_managers 中的 _form.html.erb 文件

<% form_for (@bookmanager) do |f| %>  
  <div class="field">  
    <%= f.label :customer_id %><br />  
    <%= f.text_field :customer_id %>  
  </div>  
  <div class="actions">
    <%= f.submit %>
  </div>  
<% end %> 

我知道它可以正确渲染,如果我在其中放入废话,我会在表格之外看到它们。但我不确定 bookmanager 是否真的是空的、nil 或正确设置

4

1 回答 1

0

更改<% form_for (@bookmanager) do |f| %>

导轨 3:

<%= form_for (@bookmanager) do |f| %> 

导轨 2:

<%- form_for (@bookmanager) do |f| %> 

你需要一个-(Rails 2) 或=(Rails 3) 在<%.

于 2012-08-02T14:51:28.820 回答