-1

我正在尝试执行 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]

4

1 回答 1

1

您似乎选择了boats 表和 ports 表的所有列以创建一组 Boat 对象。也许您的意思是选择 b.*?

于 2013-10-10T13:37:35.617 回答