在Rails中,是否有适当的位置来放置模型的帮助方法?控制器和视图都有帮助方法,但我不确定放置模型帮助方法的最佳位置。除了将一个方法添加到ActiveRecord :: Base
中之外,我不想这么做。
更新:看起来Concerns非常合理。以下是我想要的示例。某些模型永远无法被删除,因此我添加了一个回调函数,它始终会抛出异常:
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 的做法吗?
ActiveRecord::Base
。 - spickermann