我正在一个Rails应用程序,我有一个仪表板::用户(仪表板/用户)控制器,我希望用户通过该网站的后端更新他们的博客文章。这工作正常,但是当我试图获取用户创建的最新博客帖子的列表时,我收到一条错误消息。未定义的局部变量或方法`博客'?
仪表板/ users_controller
def content
@blog = Blog.new
render ('content')
end
仪表板/博客/ _blog_list.html.erb
<%= div_for(:dashboard ,blog) do %>
<%= link_to image_tag(blog.preview.url(:thumb)), dashboard_blog_path(blog) %>
<h1><%= link_to (blog.title),dashboard_blog_path(blog) %></h1>
<p><%= truncate blog.excerpt, length: 160 %></p>
<%= blog.published_at %>
<%= blog.site_id %>
<% end %>
控制器
def content
@site = Site.find_by_subdomain!(request.subdomain)
@blogs = @site.blogs.all
@blog = Blog.new
render ('content')
end
content.html.erb
<%= render :partial => 'dashboard/blogs/blog_list', :locals => {:blogs => @blog} %>
为什么这不起作用的原因?
如果博客位于仪表板文件夹内,这也起作用吗? Rails向我抛出同样的错误。 – coletrain 2012-04-19 01:28:26
你可以粘贴渲染这个部分的线吗?另外,你是否用'@ blog'替换了所有'blog'? – 2012-04-19 01:57:19
我已经更新了我的代码 – coletrain 2012-04-19 02:13:45