テーブル結合 基本

MyApp::Schema::Result::Itemのテーブルクラスを以下のようにする。

 __PACKAGE__->belongs_to(
     'category',                                      # アクセサ名
     'MyApp::Schema::Result::Category',               # 結合先のテーブルクラス名
     { 'foreign.category_id' => 'self.category_id' }  # 結合に使うカラム名
 );                                                   # この例のようにカラム名が同じ場合は、ハッシュでなく、
                                                      # 'category_id'と省略して指定しても良い

以下のように結合先を呼べる。

 say $item->category->category_name;

categoryがテーブルクラスで指定したアクセサ名。

参考

http://search.cpan.org/perldoc?DBIx::Class::Relationship


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS

Last-modified: 2011-06-07 (火) 16:57:04