如何在rails中显示嵌套表单中的数据?

时间:2014-03-26 20:27:28

标签: ruby-on-rails ruby nested-forms

我有一个嵌套的模型表单,它可以提供两个表格。我在“帖子”表单中嵌套了“我的位置”字段。如何在show.html.erb文件中显示嵌套数据?

<h1>My Update</h1><br>
<p>my status: <%= @post.status %></p>
<p>this is the upload: <%= link_to @post.upload, @post.upload %></p>
 <p><%= @place.address %></p>

我在最后一行收到“Posts#show中的NoMethodError”错误。

它表示“未定义的方法`地址'为nil:NilClass”

如果你想查看所有代码,我只是推送到github。 http://bit.ly/1dsu94Y

2 个答案:

答案 0 :(得分:1)

更新

 <p><%= @place.address %></p>

。通过

 <p><%= @post.place.address %></p>

由于您尚未设置@place实例变量,因此您收到错误消息。 查看代码,我发现1-MPlace模型之间存在Post关系。 因此,为了显示特定address所属的place的{​​{1}},您可以按上述方式执行此操作。

答案 1 :(得分:0)

您未在PostsController#show method中加载@place实例变量。在show方法中加载后,无论您需要根据应用的数据,模型等进行加载,都不会再收到错误。