之前我写了一些大而复杂的SQL语句,然后询问过如何在Rails中更好地处理它们。但是最终我还是用了Arel,因为如果我使用"find_by_sql",就无法嵌套更多条件。
Questions.find_by_sql(HUGE_SQL).by_filter(:popular).order('created_at').limit(5)
我的目标是:
- 将SQL语句整理到单独的文件中
- 将这些字符串SQL语句转换为Arel对象
- 将该Arel对象与常见的可重用条件(如“limit,order”等)嵌套
谢谢。