perl – DBIx :: Class按ID从另一个表中获取行
发布时间:2020-12-16 06:05:58  所属栏目:大数据  来源:网络整理 
            导读:在我的项目中,我有3个表:艺术家,专辑和曲目 结果艺术家: ...__PACKAGE__-has_many( 'albums' = 'MYLIB::DB::Schema::Result::MyDir::Album',{ 'foreign.artist_id' = 'self.id',},);... 结果专辑: ...__PACKAGE__-belongs_to( 'artist' = 'MYLIB::DB::Sch
                
                
                
            | 
 在我的项目中,我有3个表:艺术家,专辑和曲目 
  
  结果艺术家: ...
__PACKAGE__->has_many(
     'albums' => 'MYLIB::DB::Schema::Result::MyDir::Album',{ 'foreign.artist_id' => 'self.id',},);
...结果专辑: ...
__PACKAGE__->belongs_to(
     'artist' => 'MYLIB::DB::Schema::Result::Artist',{ 'foreign.id' => 'self.artist_id',);
__PACKAGE__->has_many(
     'tracks' => 'MYLIB::DB::Schema::Result::MyDir::Track',{ 'foreign.album_id' => 'self.id',);
...结果跟踪: __PACKAGE__->belongs_to(
    'album' => 'MYLIB::DB::Schema::Result::MyDir::Album',{ 'foreign.id' => 'self.album_id',);现在我有一个对象$artist,我想通过ID获取Track. 查询示例: 解决方法
 如果要生成您提供给我们的SQL,那么您拥有艺术家对象的事实就无关紧要了.只需获取一个跟踪结果集并在其上运行find(). 
  
  
  my $track_rs = $schema->resultset('Track');
my $track = $track_rs->find($track_id);如果由于某种原因,您没有架构对象,那么您可以从您的艺术家对象中获取该对象. my $schema = $artist->result_source->schema; (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! | 
