2011-07-06 7 views

答えて

1

(has_manyのに特に注意を払う)Rails guide on associationsをチェックしてください。

あなたは、任意の列を使用することができます(t.typeの代わりにt.columnを使用してください)。データベース間の移植性が懸念される場合は、activerecordで明示的にサポートされているタイプに固執することをお勧めします。

果物にはhave_manyリンゴが面白いようですが、それは単なる例ですか? (私は、果物が果物のサブクラスであることを期待しています)。

レール4に
+0

慎重に、SQL99のアレイを含むが、私は、彼らが(サポートされている方法を広く知っていませんPostgreSQLは少なくともそれらをサポートしています)。 –

+0

@muが短すぎます:ありがとう、私はSQL99の配列のサポートを認識していませんでした。私が仕様書を読んでいるのであれば、ビルトインのデータ型に限られているので、まだリンゴの配列を手に入れることはできません。 – cam

+0

しかし、リンゴのIDの配列を取得することができます。私はどのくらい幅広くサポートされている配列があるのか​​分かりませんが、SQL99は12年しか経っていませんし、データベースベンダーは移植性と標準ベースのシステムに移行するのに速くはありません:) –

2

あなたが使用することができます? serialize。しかし、Appleはassociationsを使用して、ARオブジェクトであることを行っているか。

16

、あなたが実際にDBに配列型を使用することができますPostgreSQLの使用:

移行:

class CreateSomething < ActiveRecord::Migration 
    def change 
    create_table :something do |t| 
     t.string :some_array, array: true, default: [] 
     t.timestamps 
    end 
    end 
end 
関連する問題