0
如何使用ActiveRecord获得相同的结果?将查询从SQL转换为ActiveRecord
SELECT categories.* FROM categories
INNER JOIN levels ON levels.id = categories.level_id where levels.description <= "Medium"
如何使用ActiveRecord获得相同的结果?将查询从SQL转换为ActiveRecord
SELECT categories.* FROM categories
INNER JOIN levels ON levels.id = categories.level_id where levels.description <= "Medium"
很难是没有更多的细节精确,但它应该是类似的东西:
Category.joins(:level).where('levels.description <= "Medium"')
我想这也应该做的伎俩:
Category.joins(:level).where(Level.arel_table[:description].lteq('Medium'))
我得到这个错误ActiveRecord :: ConfigurationError:未找到名为'levels'的关联;也许你拼错了它?级别has_many类别和类别belongs_to级别 – user588324
它应该是Category.joins(:级别)... – megas
Yup Category.joins(:级别)的作品。谢谢一吨 – user588324