ruby-on-rails - 我们如何在其他 Controller View 中使用一个 Controller 方法?

标签 ruby-on-rails ruby ruby-on-rails-4

我有两个 Controller ,分别命名为:lists_controller.rbarticles_controller.rb

articles/index.html.rb 下的 View 。

我想在 articles/index.html.rb 中使用来自 list_controller.rb 的元素。 我在lists_controller.rb中的方法如下:

def index
    @lists = List.all
end

我想在 articles/index.html.rb 中使用 @lists 来遍历 @lists 实例下的元素 articles/index.html.rb下查看articles_controller.rb

最佳答案

最简单的方法是简单地将@lists = List.all 添加到ArticlesController#index。几乎没有足够的代码来担心重复/DRY。

如果需要更复杂的行为,您可以通过在 ApplicationController( Controller 从中继承)中定义它来在 Controller 之间共享行为,或者使用 filters 在 Controller 内的多个操作之间共享行为,或将两者结合起来。

关于ruby-on-rails - 我们如何在其他 Controller View 中使用一个 Controller 方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33187192/

相关文章:

ruby-on-rails - 在 rails 3.1 中使用 ajax 调用渲染局部 View

ruby - 在用户的 .rvmrc 中设置 rvm 默认解释器?

ruby - 如何在 Ruby http post 中发送表单数据

ruby-on-rails - 如何正确转义 Active Record where 子句中的正则表达式

ruby-on-rails - 在 mongoid 关系上批量插入文档

ruby-on-rails - 如何检查rails上传的文件类型?

ruby-on-rails - 如何在 Rails 5 中删除帮助文件?

ruby-on-rails - Rails 获取表记录数的最快方法

ruby - 在 Ruby 中,有没有办法轻松地只删除数组中的 1 个匹配项?

css - 完全相同的一行 SASS 代码适用于一个 Rails 元素,但不适用于另一个元素