nil'不是与ActiveModel兼容的对象。它必须实现:to_partial_path

时间:2018-02-24 17:19:09

标签: ruby-on-rails

尝试运行我的Rails应用时出错。我认为这可能是基于我在Stack Overflow中研究的类似错误的数据问题。以下是命令行的输出:

ActionView::Template::Error ('nil' is not an ActiveModel-compatible object. It must implement :to_partial_path.):
2: <% provide(:blog_active, 'active') %>
3:
4: <div class="row">
5:   <%= render @posts %>
6: </div>

app/views/blog/posts/index.html.erb:5:in `_app_views_blog_posts_index_html_erb__817338750_58788108'

2 个答案:

答案 0 :(得分:0)

也许与您的部分名称存在差异。你确定它是_posts.html.erb而不是_post.html.erb吗?

我刚刚发现此Stack Overflow问题与之相关: Rails rendering instance variable from application.html.erb

答案 1 :(得分:0)

我有同样的错误。我的问题是我的 PostsController #index 中的 @posts 变量。我写 @posts 变量时出错。 当我修正了 @posts 的值时,问题就消失了。