テーブル結合 基本

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 (2687d)