我有两个具有各自控制器和视图的模型:Profile
和Comment
.
我的应用程序的整个视图(整个网页)位于Profile
show.html.erb
. 在此页面上,用户应该能够创建评论,其中belongs_to
一个Profile
.
如何在无需导航到标准/comments/new
页面的情况下完成此操作?
编辑: 遵循rails指南后,我实现了:
<%= simple_form_for([@profile, @profile.comment.build], html: {class: "form-inline"}) do |f| %>
<%= f.error_notification %>
<%= f.input :description, label: false, placeholder: 'Create an comment', input_html: { class: "span4" } %>
<%= f.submit 'Submit', class: 'btn btn-small'%>
<% end %>
评论控制器
def create
@profile = profile.find(params[:profile_id])
@comment = @profile.comments.create(params[:comment])
redirect_to profile_path(@profile)
我收到了这个错误:
undefined method `comment' for #<Profile:
修复:在构建语句中,注释需要是复数
@profile.comments.build