0

「製品」ページに特定のユーザーの宣伝文句と画像を表示させようとしています。私が持っているコードは以下のとおりですが、現在ログオンしているユーザーの宣伝文句と画像をプルし続けますが、これは私が望むものではありません。ログアウトするとすぐにCall to a member function getBlurb() on a non-objectエラーメッセージが表示されます。特定のユーザーの「宣伝文句」と「画像」フィールドを表示する方法はありますか?

public function executeShow(sfWebRequest $request)
  {
    $this->car = $this->getRoute()->getObject();
    $seller_id = $this->car->getSeller_id();
    $this->seller = $this->getUser()->getGuardUser($seller_id);
    $this->blurb = $this->seller->getBlurb();
    $this->picture = $this->seller->getPicture();
  }
4

1 に答える 1

0

$this->sellerパラメータを受け入れないため、オブジェクトではあり$this->getUser()->getGuardUser($seller_id);ません。現在のユーザーのみを取得します。でそのメソッド定義を見てくださいsfGuardSecurityUser

あなたはそれを次のようにしなければなりません:

教義:$this->seller = $this->car->getSeller();

推進、動かす:$this->seller = SfGuardUserPeer::retrieveByPK($seller_id);

于 2012-11-03T10:49:46.657 に答える