在rails模型中,我们可以在单个文件中编写很多东西。 (样本模型)
样本模型:
class Payment < ActiveRecord::Base
# Database Assosication
has_many :post
belongs_to :user
# Filter
before_save :check_full_name
# Validation
validates_presence_of :name
# Scope
scope :is_paid, -> { where(:status => 'paid') }
# Constents
STATUS = {
:paid => 'paid',
:pending => 'pending',
:failed => 'failed'
}
# Methods
def get_name
# sample code goes here
end
end
在模型中,我们使用数据库关联,过滤,验证,范围,功能。
但是组织我的模型的最佳方法是什么。
我的意思是应该先进行协会?或验证或范围?
答案 0 :(得分:2)
我不知道是否有最佳实践指南。我将分享我的经验。
我的工作是:
constants
放在顶部。filters
和validators
associations
scopes
methods
此外,在放置它们时,我们将它们按名称的字母顺序排列。
我们在代码库中遵循这种结构,它对我们很有用。但是,真的是个人/团队在模型中组织事物的选择。