serialize-rails gemでJSONをDBに格納するという記事を書いたけど、わざわざgemを使わなくても第2引数に渡すオブジェクトがloadとdumpを実装していれば十分だった。ちなみにActiveRecord 3.2で確認。 たとえばURLをURIのオブジェクトとして扱いたい場合。 # app/models/uri_coder.rb class UriCoder # ActiveRecord::Baseのインスタンスが作られるときに呼ばれる。 # DBから読み出したときにはstringには保存されている値が渡され、 # newされたときにはnilが渡される。 def load(string) URI.parse(string) if string.present? end # DBに書き込むときに呼ばれる。 def dump(uri) uri.to_s end end # a
Rails のテストを書いていて、フィクスチャはのちのちメンテナンスに苦労しそうだから FactoryGirl を使ってみた。 FactoryGirl についてはここが詳しい http://www.func09.com/wordpress/archives/532 上のページの例にあるとおり、中間テーブルを使うようなケースでテストデータを定義するのに便利らしい (公式ページ?でもそのように宣伝していた) のだが、中間テーブルが不要な has_many/belongs_to の関係を定義するときに、 association を親子どちらに書くかでハマってしまった。 すぐ動かせるコード例がなくて恐縮だけど、 FactoryGirl で has_many/belongs_to な association を定義するときは、必ず子のほうに親の Factory を書かないといけないっぽい。このスレッ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く