1

私はLaravelを初めて使用し、この問題についてしばらく頭を悩ませてきました。テーブルから単一の行を取得して、それをビューに渡そうとしているだけです。

テーブルには、このクエリと一致する必要がある 2 つのフィールドがあります。1 つ目はもちろん id で、2 つ目はログインしているユーザーに一致する user_id です。完了したら、失敗メッセージ (ID: X に一致するレコードが見つかりません) で応答する予定です。

public function show($id)
{
   $data = Partners::where('id', $id);->where('user_id', Auth::user()->id)->get();
   return View::make('partners.showone')
            ->with('data', $data)
            ->with('title', 'View Record')
            ->with('breadcrumb', 'View Partner');       

}

私からしてみれば:

{{ $data->firstName }}

この構成では、次のエラーが表示されます。

未定義のプロパティ: Illuminate\Database\Eloquent\Builder::$firstName

4

1 に答える 1

0

タイプミス...あなたは;を持っています 真ん中に……あるはず……

   $data = Partners::where('id', $id)->where('user_id', Auth::user()->id)->get();

しかし、あなたのクエリは本当にこれでなければなりません..

$data = Partners::find($id)->where('user_id', Auth::user()->id)->first();

1行だけが必要な場合

編集(以下のコメントに基づく)

パートナーモデルの携帯電話の場合(Laravel 3で作業しています)

function phone(){
 return $this->hasMany('Phone');
}

次に、上記の $data クエリを使用すると、電話を取得できます...

$data->phone();
于 2013-06-07T22:32:37.700 に答える