如何在symfony中列出某位作者撰写的文章?

时间:2012-06-22 10:58:49

标签: php symfony1 symfony-1.4 backend

我在一个简单的新闻网络应用程序上工作。

它有表格文章(id,title,content,user_id)和表用户(id,name,username,passwd ..)等。

在后端应用中,我只想列出具有特定user_id的文章。

我会从user_id获得$this->getUser()->getAttribute('user_id')

据我所见,symfony网站上提供的文档并未涵盖此问题。

2 个答案:

答案 0 :(得分:0)

This article将为您提供不同的方法。

根据您的需求,您可以覆盖buildQuery

protected function buildQuery()
{
  return parent::buildQuery()
    ->where('user_id = ?', $this->getUser()->getAttribute('user_id'));
}

答案 1 :(得分:0)

你可以:

    你在generator.yml中的
  • 在like:

    下插入一个新行
    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;
    }