find_by_sql 返回值问题

最近在做一个公司内部的系统,因为ROR开发速度较快,所以就用了它,后面会纪录一些开发的经验上来。

在用find方法执行查询的时候,返回值肯定是一个类的集合(Array),这时候可以直接调用类的属性,但是在用find_by_sql的时候,例如,下面的sql语句:sql = "SELECT (TO_DAYS(FINISH_DATE) - TO_DAYS(START_DATE)) AS DAYS,(TO_DAYS(NOW()) - TO_DAYS(START_DATE)) AS DAYS_PASS FROM MILESTONE_ITEMS WHERE ID = " + id.to_s
返回的对象中类型虽然还是原来的类,但是就只有DAYS和DAYS_PASS两个属性了,因为Rails好像是用检索的字段来填充返回对象的。不知道这样理解对不对,有空再研究吧。 

你可能感兴趣的:(Ruby&Rails,sql,date,rails)