Ruby on rails 使用“局部”渲染完整视图
我有一个简单的部分来展示相关社区的一些主题Ruby on rails 使用“局部”渲染完整视图,ruby-on-rails,Ruby On Rails,我有一个简单的部分来展示相关社区的一些主题 <%= render :partial => 'shared/topic', :collection => @community.topics %> 但是我无法从我的社区视图中获取community.id 我也试过: @topicscommunity = @community.topics.find(:all, :conditions => {:community_id =&g
<%= render :partial => 'shared/topic', :collection => @community.topics %>
但是我无法从我的社区视图中获取community.id
我也试过:
@topicscommunity = @community.topics.find(:all,
:conditions => {:community_id => @community.id})
但从控制器上看,它不起作用
谢谢您的帮助。您不必仅在视图中使用
render:partial=>…
。您可以在控制器中轻松地执行此操作(而不是render:action=>…
或其他任何操作)
所以,把这个放在控制器的末尾
render :partial => 'shared/topic', :collection => @community.topics
使用
:action
,:partial
,:text
,:template
或任何其他散列键调用呈现
之间没有根本区别。如果您只想呈现相同的模板,请使用:
def topicsCommunity
fetch_skills ["community_id = ?", @community.id]
render 'index'
end
谢谢你的回答。我想我问的问题不对。我想有一个网页像一个索引页的所有主题包含在社区。我想我可以通过路由来完成,但是mysite/communities/topics/总是将所有主题作为mysite/topics/提供给我。我只是更新了我的代码(获取主题,而不是获取技能)。但是我不明白我的代码有什么不同。当我放置一个像“topicsCommunity\u topics\u path”这样的链接时,它从社区返回一个nil对象,因为它没有将id作为参数。
def topicsCommunity
fetch_skills ["community_id = ?", @community.id]
render 'index'
end