Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/multithreading/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 实例变量未传递到部分(rails 5)_Ruby On Rails - Fatal编程技术网

Ruby on rails 实例变量未传递到部分(rails 5)

Ruby on rails 实例变量未传递到部分(rails 5),ruby-on-rails,Ruby On Rails,实例变量没有传递到partial,因为我面临未定义的方法错误 物品管理员: def index @articles = Article.order("created_at DESC").all end 文章部分(_Article.html.erb) index.html.erb <%= render 'article', article: @articles %> 传递局部变量的替代方法也不起作用: <%= render 'article', :ar

实例变量没有传递到partial,因为我面临未定义的方法错误

物品管理员:

  def index
    @articles = Article.order("created_at DESC").all
  end
文章部分(_Article.html.erb)


index.html.erb

<%= render 'article', article: @articles %>

传递局部变量的替代方法也不起作用:

<%= render 'article', :article => @articles %>
@articles%>

您正在将一组
@文章作为
文章
传递到您的

也许下面的方法行得通

index.html.erb

 <% @articles.each do |article| %>
   <%= render 'article', article: article %>
 <% end %>


你确定@articles已经设置好了吗?根据rails 5文档,你可以简单地使用:
渲染@articles
并确保
@articles
确实设置好了。你的代码不起作用,因为
ActiveRecord::Collection
上没有方法
标题
。更好的是:
,不需要循环。
 <% @articles.each do |article| %>
   <%= render 'article', article: article %>
 <% end %>