2010-03-05に行われたYokohama.pm #5でData::ObjectDriverについて発表したプレゼンを公開します。少しわかりづらい部分を加筆・修正したり、あとなんとなく英語にしてみました。 個人的にD::ODは、やれることは少ないけど、その分ソースが少ないので処理の全部を把握できるし、キャッシュやパーティショニングもサポートしてて使いやすいので、好きなORMの1つです。 興味がある方は是非使ってみてください。
CPANに上がってるのだとどーやったらいいのかさっぱりわかんなかったけど、code.sixapart.comに上がってるやつだとこんな感じでやるみたい。 Data::ObjectDriver::BaseObject->begin_work; eval { my $album = Album->new; $album->title('Album'); $album->artist('Artist'); $album->save; for ( 1 .. 5 ) { my $track = Track->new; $track->title("Track $_"); $track->artist("Artist $_"); $track->album_id($album->id); $track->save; } }; if ($@) { Data::ObjectDriver::BaseObje
ObjectDriverを使って、対象のカラム一覧を取る方法なんだけど、Iterator,ResultSetから取る方法が見当たらなかったので、しかたなく、BaseObject側から取る。 流れ firstで1列目のレコードとる。 coloumn_namesで一覧をとる prevで元にもどす。 ループまわしてとる。 とやるしか、思いつかない。 list.coumn_names 的なことができないものなのだろうか。そうすれば、手順が減るのに。help! <table border="1"> <tr> [% FOREACH column_name IN list.first.column_names %] <th>[% label.${column_name} || ' ' %]</th> [% END %] [% GET list.prev %] </tr> [% WHILE( i
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く