3

ビューにデータを添付しようとしていますが、これを何度も成功させることができました。ただし、私の最新のページはエラーをスローしています:

Undefined property: Illuminate\Database\Eloquent\Collection::$pay_method

私のコントローラーには、次のクエリがあります。

$receipt = Receipt::where('invoice_id', '=', $id)->get();

$id は、請求書 ID を保持する変数です。

次のようにオブジェクトをビューに渡します。

return View::make('greenfee.edit')
        ->with('receipt', $receipt);

ビューで-テストするために、私は単純にやっています:

{{ $receipt->pay_method }}

「pay_method」はテーブルの列です。

これにより、エラーがスローされます。

さらにテストするために、 $receipt には print_r を使用してデータが含まれていることをテストしましたが、プロパティは間違いなくそこにあります-ここに抜粋があります:

[pay_method] => card

そして、私が期待する値です。

それで、ここで何が欠けていて誤解されていますか?

また、クエリで get() をいつ使用する必要がありますか (または使用しないでください)。

すべての助けはTaに感謝します

4

1 に答える 1

3

コレクションは基本的に結果の配列であるため、for ループなどで繰り返し処理する必要があります。ただし、1 つのレコード/行だけを取得しようとしている場合は、次を使用する必要があります。

$receipt = Receipt::where('invoice_id', '=', $id)->first();
于 2013-07-15T17:53:26.630 に答える