我有两个名为lists_controller.rb
和articles_controller.rb
的控制器。
articles/index.html.rb
下的视图。
我想在list_controller.rb
中使用articles/index.html.rb
中的元素。
我在lists_controller.rb
中的方法如下:
def index
@lists = List.all
end
我想在@lists
中使用articles/index.html.rb
来循环@lists
articles/index.html.rb
视图中articles_controller.rb
个实例下的元素
答案 0 :(得分:3)
最简单的方法是将ArticlesController#index
添加到ApplicationController
。它的代码几乎不足以担心重复/干扰。
如果需要更复杂的行为,您可以通过在{{1}}(从哪些控制器继承)或在使用filters的控制器中的多个操作之间定义控制器,或者通过组合两者来共享控制器之间的行为
答案 1 :(得分:0)
要按字面意思回答标题 - 您可以使用名为list_index的方法创建一个模块,然后在两个控制器中包含该模块。
在您的特定情况下,可能更容易接受其他人已经概述的两个电话。