我的数据库中有两个表,其中一个表与我的 Accounts 表相关联。
因此,在我的 Account.pm 架构结果中,我添加了以下行。
__PACKAGE__->has_many('subjects', 'MyApp::DBIC::Schema::Subject', {'foreight.account_id' => 'self.account_id'});
然后在我的控制器中进行这样的搜索。
$c->stash->{search_results} = $c->model('DB::Account')->search(
{ -or => [
firstname => {like => '%'.$search_term.'%'},
'subjects.subject_title' => {like => '%'.$search_term.'%'},
]
},
{
join => 'subjects',
rows => '3',
},
{
order_by => 'first name ASC',
page => 1,
rows => 10,
}
);
它不会输出任何错误,但我不知道如何在我的视图文件中输出结果。这是在两个表之间建立关系的正确方法吗?
我的目标:提供一个search_term
,搜索两个表并将结果输出到视图文件中。我的 SQL 看起来像这样:
SELECT FROM Accounts,Subjects WHERE Accounts.firstname=$search_term OR Subjects.subject_title=$search_term LEFT JOIN Subjects ON Accounts.account_id=Subject.account_id
并且想要在视图文件中输出结果,如上所述。
我对 Perl 还很陌生,有些文档对我来说仍然没有多大意义。因此,我们将不胜感激任何帮助和提示。