我有一个ChatController
和@user
变量。在主页上,我显示@user.name
。我也销毁并创建了与Ajax一起工作的方法,因此当我从我的聊天中删除邮件时,@user
变为零。为了防止在无对象上调用name
的问题,我可以将@user=User.find_by_id(:user_id)
添加到每个方法。但如果我有很多方法,这会变得乏味。我可以声明@user=User.find_by_id(:user_id)
一次并干起我的代码吗?导轨中的全局控制器变量
3
A
回答
7
是的,这是在before_filter
(Documentation)中完成的。
喜欢的东西:
class ChatController < ActionController::Base
before_filter :find_user
private
def find_user
@user ||= User.find_by_id(params[:user_id])
end
end
您也可以考虑使用Inherited Resources其自动执行此为您服务。
相关问题
- 1. laravel控制器中的全局变量
- 2. 每个控制器的导轨布局
- 3. 如何在extjs4.1中的控制器中声明全局变量?
- 4. 基于全局变量的变体视图控制器
- 5. 笨:在控制器中的全局变量
- 6. 如何访问zend框架控制器中的全局变量
- 7. laravel 5.2控制器中的全局变量
- 8. 设置Kohana中所有控制器的全局变量2.3.4
- 9. 核心控制器中的Codeigniter全局变量
- 10. 如何设置在控制器中的全局变量
- 11. CodeIgniter无法访问控制器中的全局变量
- 12. 应用程序控制器中的全局变量?
- 13. 从表单行为到控制器中的全局变量
- 14. PhalconPHP访问控制器中的全局变量
- 15. 轨控制器之间的变量
- 16. 通过变量全局访问控制
- 17. 控制器方法 - 导轨信息量
- 18. Rails全局变量在控制器动作间变为零
- 19. 在控制器中使用全局模板变量angularjs
- 20. 如何在控制器中全局声明这些变量?
- 21. 轨道控制器实例变量
- 22. requirejs导出全局变量
- 23. AngularJs:如何访问控制器之外的全局变量?
- 24. 如何定义用于REST控制器的Wordpress全局变量?
- 25. Spring 3 MVC访问控制器的全局变量
- 26. 如何定义Symfony2控制器的全局变量?
- 27. 控制器MVC内部的全局变量
- 28. 来自查询字符串的MVC控制器全局变量
- 29. “导入全局变量”中的WebPack
- 30. 从控制器传递实例变量以查看导轨
您的实例变量将会持续一个请求,您可以使用before过滤器来保存重复。 – 2012-01-02 18:24:44
@Berlin谢谢你的回复..我只问你有没有。 – 2015-05-08 08:29:52