Posts中的NameError#在Rails应用程序中显示

时间:2015-01-21 02:25:04

标签: ruby-on-rails ruby-on-rails-3 ruby-on-rails-4

我在我的Rails应用程序上收到此错误 "未定义的局部变量或方法`主题'对于#<#:someNum>"

 <%= form_for [topic, post, comment] do |f| %>
    <div class="row">
      <% if comment.errors.any? %>
        <div class="alert alert-danger">

应用程序跟踪|框架跟踪|完整跟踪

app/views/comments/_form.html.erb:1:in `_app_views_comments__form_html_erb__92596123__625140068'
app/views/posts/show.html.erb:30:in `_app_views_posts_show_html_erb__385866763__625570018'

关于如何修复的任何想法?

2 个答案:

答案 0 :(得分:0)

看起来你的表格是偏袒的。

如果此表单是迭代器的一部分,或者局部变量仅在主posts / show.html上定义,则需要将局部变量传递给表单partial

<%= render 'form', topic: topic %>

最有可能的是,根据您的设置,您必须将其包含在所有3个局部变量中。

<%= render 'form', topic: topic, post: post, comment: comment %>

答案 1 :(得分:0)

谢谢!这就是我对部分

的看法
<%= render partial: 'comments/form', locals: { topic: @topic, post: @post, comment: @comment } %>