我想象类似这样的东西:Rails的:范围整个模型
class User < ApplicationRecord
default_scope -> { where(public: true) }
end
现在,只要用户模式被访问应该始终添加where(public: true)
到querys。所以all
最终会成为all.where(public: true)
。
我想把这样的东西放入ApplicationRecord
类来覆盖所有继承模型的行为,因此手动覆盖对我来说不是一种选择。
这是否'default_scope'将是相同的所有继承:
话虽这么说,如果你添加一个范围
scope :public, ->() { where(public: true) }
并调用它,只要你想确保你的用户是公开的,最好楷模? – Pavan@Pavan是的。这就是为什么我想继承:-) – jonhue