部分调用独立于视图的同一控制器

时间:2016-06-27 20:14:16

标签: ruby-on-rails

很抱歉这个虚拟问题,但我刚刚开始使用rails。

我有一部分应该在我的整个网站中用作侧边栏。它显示了我在" homeController"中初始化的类别列表。

当我在主页上工作正常时。当我转到另一个页面(如userController)时出现问题,因为没有类别列表。

一种可能的解决方案是在每个控制器中初始化此列表,但似乎并没有" DRY"对我来说。

我是否可以使用任何解决方案而无需每次都重复使用?

谢谢你们!

1 个答案:

答案 0 :(得分:1)

如果您在ApplicationController中设置了before_action,则会继承所有从ApplicationController继承的控制器。

通常,大多数或所有常规控制器都应该从ApplicationController继承。

# inside ApplicationController...
before_action :set_categories

def set_categories
  @categories = Category.all
end