我的任务是向名为Profile
的{{1}}类添加一个类方法,其中:
接受出生年份的最小值和最高值
在get_all_profiles
子句中发出BETWEEN
SQL子句,以查找出生年份介于最小年份和最长年份之间的WHERE
在应用参数时防御SQL注入 SQL子句
返回ASC出生年订单中的个人资料集合
我认为下面的实现是正确的,但是如何在类对象上调用它(即Profile
)?
Profile.get_all_profiles?(min, max)
答案 0 :(得分:1)
要将此方法实现为类方法,您可以将上述方法编写为:
def self.get_all_profiles(start_year, end_year)
Profile.where(:birth_year => start_year..end_year).order(:birth_year )
end
或,
class << self
def get_all_profiles(start_year, end_year)
Profile.where(:birth_year => start_year..end_year).order(:birth_year )
end
... other class methods ...
end
因此,您可以将其称为:
Profile.get_all_profiles(start_year, end_year)