我在一个简单的新闻 Web 应用程序上工作。
它有表 Articles(id,title,content,user_id) 和表 Users(id,name,username,passwd..) 等。
在后端应用程序中,我只想列出具有特定user_id
.
我user_id
会从$this->getUser()->getAttribute('user_id')
.
据我所知,symfony 网站上提供的文档没有涵盖这个问题。
我在一个简单的新闻 Web 应用程序上工作。
它有表 Articles(id,title,content,user_id) 和表 Users(id,name,username,passwd..) 等。
在后端应用程序中,我只想列出具有特定user_id
.
我user_id
会从$this->getUser()->getAttribute('user_id')
.
据我所知,symfony 网站上提供的文档没有涵盖这个问题。
你可以:
在您的 generator.yml 中插入一个新行,如下所示:
list:
title: Articles list
table_method: getArticlesByUserId
在你的 ArticleTable.class.php 中插入一个新函数:
public function getArticlesByUserId() {
$userId = sfContext::getInstance()->getUser()->getAttribute( 'user_id' );
$u = $this->createquery( 'u' )->where( 'u.user_id = ?', $userId );
return $q;
}
本文将为您提供不同的方法。
关于您的需求,您可以覆盖buildQuery
:
protected function buildQuery()
{
return parent::buildQuery()
->where('user_id = ?', $this->getUser()->getAttribute('user_id'));
}