一个控制器使用另一个控制器的视图呈现
问题描述:
我有QuestionController 我现在有AnotherQuestionController,应该使用模板和部分在app/views/question/ 中呈现这是可能的吗?看起来应该是这样。一个控制器使用另一个控制器的视图呈现
我已经试过
render :template => "question/answer"
但answer.html.erb包括谐音,我得到这样的错误
“缺少鉴于路径模板another_question/_my_partial.erb”
那么,有一种方法可以告诉Rails“将AnotherQuestionController当作其QuestionController,并在app/views/question中寻找视图和部分”? 或者我将不得不创建app/views/another_question - 这将导致重复(这不能是Rails的方式)。
感谢
答
模板渲染应实际工作
render :template => "question/answer"
您遇到的问题是找错了地方的谐音。修复很简单,只需在任何共享模板中使您的偏好成为绝对的。例如,问题/ answer.html.erb应该有
<%= render :partial => 'question/some_partial' %>
而不是通常的
<%= render :partial => 'some_partial' %>
答
你可以实现它:
render 'question/answer'
这不起作用恐怕 – Paul 2009-06-19 11:50:31
哦,对了。在第二次检查中,我发现了实际问题 – 2009-06-19 14:21:20
在rails 3.x中执行此操作的任何新方法?我在问,因为我使用了一个gem,让帮助者自动在视图中进行渲染(否则你的解决方案会起作用)。我宁可不覆盖那个宝石的助手。谢谢! – montrealmike 2011-10-28 15:22:10