Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Properti tidak terdefinisi:Illuminate\Database\Eloquent\Collection::Laravel 5.2

Seperti status kesalahan Anda:

Anda mencoba mengakses properti di Koleksi, bukan Model. Pertama, Anda dapat menggunakan hubungan yang Anda buat, seperti:

$order = App\westcoorder::where('id', $orderNumber)->with('westcoorderitem')->firstOrFail();

Ini akan memastikan item pesanan akan disertakan dengan hasil, alih-alih mengeksekusi kueri lain untuk mengambilnya.

Anda kemudian dapat meneruskan $order ke tampilan:

return view('welcome', compact('orderNumber', 'order'));

(Anda mungkin bisa mengabaikan orderNumber yang merupakan pesanan sebenarnya juga)

Kemudian Anda dapat mengakses order dalam tampilan Anda dan loop melalui items seperti ini:

@foreach($order->westcoorderitem as $item)
    {{ $item->productName }}
@endforeach

FK

Tip lainnya adalah memperbarui tabel Anda untuk menggunakan indeks guna meningkatkan kinerja dan membuatnya rapi, seperti FK Anda sebutkan di komentar buat migrasi Anda. Anda dapat melakukan migrasi untuk memperbaruinya, seperti:

$table->foreign('westcoorder_id')->references('id')->on('westcoorders');

Dan/atau kembangkan ini, sesuai dengan kebutuhan Anda (cascading, dll).




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. VARCHAR vs TEXT di MySQL

  2. Apakah mungkin untuk meneruskan variabel ke panggilan prosedur tersimpan di mysql?

  3. Hubungan antara katalog, skema, pengguna, dan database instance

  4. Bagaimana Anda mengonversi tabel induk-anak (kedekatan) menjadi kumpulan bersarang menggunakan PHP dan MySQL?

  5. MySQL Buat Tampilan, Ganti Tampilan, dan Jatuhkan Pernyataan Tampilan dengan Contoh