我有很多需要在控制器和视图中访问的功能。
放置这些功能的最佳位置在哪里?
用于在整个应用程序中进行视图格式化的函数属于 . ApplicationHelper
,但是这些辅助函数不应执行它们自己的任何控制器逻辑。换句话说,他们不应该负责调用模型实例或对它们做任何事情。
调用模型的函数,或提供将由其他控制器使用的对象或数据并对其进行操作的函数更合适地存储在ApplicationController
. 例如,这些功能类似于在其他控制器中访问应用程序范围的登录状态所需的功能。
此类常用函数的最佳位置是 application_controller.rb。我用它来放置代码来检查用户是否已登录以确定他/她是否需要再次登录。