Rails find_by_sql无法正常工作

时间:2013-10-10 11:05:37

标签: ruby-on-rails

我正在尝试执行find_by_sql Rails方法并且它无法正常工作。

查询:

@boats = Boat.find_by_sql(["SELECT * 
                                FROM boats b, ports p
                                WHERE p.name = ? 
                                AND b.port_id = p.id", port])
puts @boats.inspect

查询返回两个元素,但它是两次相同的元素[id = 1和id = 1]。如果我在数据库中运行查询,那么我得到两个不同的结果[id = 1和id = 2]

1 个答案:

答案 0 :(得分:1)

您似乎正在选择boat表和ports表的所有列,以便创建一组Boat对象。也许你的意思是选择b。*?