Rails中的模型的辅助方法是否有适当的位置?有控制器和视图的辅助方法,但我不确定放置模型辅助方法的最佳位置。除了向ActiveRecord::Base
添加方法外,我不希望这样做。Rails中的模型的辅助方法
UPDATE:看起来问题很有意义。这是我想要的一个例子。某些型号不能被删除,所以我添加了一个回调总是会抛出异常:
before_destroy :nope
def nope
raise 'Deleting not allowed'
end
有了顾虑,我可以做这样的事情?
class MyModel < ActiveRecord::Base
include Undeletable
end
module Undeletable
extend ActiveSupport::Concern
included do
before_destroy :nope
end
def nope
raise 'Deleting not allowed'
end
end
这是Rails的方式吗?
为什么不使用普通的旧式Ruby模块并将其混合到所需的所有类中? – 2015-03-19 09:37:45
“模特助手”是什么意思?也许你正在寻找装饰者? – 2015-03-19 09:42:43
如果您举了一个例子,我认为这会有所帮助,那么人们可以就约定提出建议:有很多方法可以做任何事情,但通常坚持常规是一个好主意。 – 2015-03-19 09:57:12