0

私は単純なニュース Web アプリケーションに取り組んでいます。

テーブル Articles(id,title,content,user_id) とテーブル Users(id,name,username,passwd ..) などがあります。

バックエンド アプリで、特定の を持つ記事のみを一覧表示したいと考えていuser_idます。

user_idから取得します$this->getUser()->getAttribute('user_id')

私が見る限り、symfony の Web サイトで提供されているドキュメントは、この問題をカバーしていません。

4

2 に答える 2

0

この記事では、さまざまなアプローチについて説明します。

あなたのニーズに関して、あなたはオーバーライドすることができますbuildQuery

protected function buildQuery()
{
  return parent::buildQuery()
    ->where('user_id = ?', $this->getUser()->getAttribute('user_id'));
}
于 2012-06-22T12:19:36.077 に答える
0

あなたはできる:

  • 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;
    }
    
于 2012-06-27T11:09:56.497 に答える