【发布时间】:2011-10-23 14:39:42
【问题描述】:
在我的各种控制器中,在各种查找调用中,我将施加 1 个特定条件:
data_owner_id = @current_user.data_owner_id
作为
- 我想干爽
- 我不想冒险忘记将它添加到所有控制器中的所有发现中
所以我想实现某种全局范围,其中包含来自控制器的信息。 “范围”不能在模型中使用(来自 railsdoc)
使用范围定义的范围将在定义时进行评估,而不是在使用时进行评估
并且@current_user 没有在那个时候定义。
任何人都可以就处理这个问题的 DRYest 方法提出任何想法吗?
【问题讨论】:
-
范围可以用接受参数的 lambda 定义,就像当前用户一样。
标签: ruby-on-rails scope