-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

クエリは 2 つの要素を返しますが、同じ要素が 2 回 [id=1 と id=1] です。データベースでクエリを実行すると、2 つの異なる結果 [id=1 と id=2] が得られました。

4

1 に答える 1

1

Boat オブジェクトのセットを作成するために、boats テーブルと ports テーブルの両方のすべての列を選択しているようです。おそらく、b.* を選択するつもりですか?

于 2013-10-10T13:37:35.617 に答える