Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Thuộc tính không xác định:Illuminate \ Database \ Eloquent \ Collection ::Laravel 5.2

Giống như các trạng thái lỗi của bạn:

Bạn đang cố gắng truy cập một thuộc tính trên Bộ sưu tập, thay vì Mô hình. Đầu tiên, bạn có thể sử dụng mối quan hệ mà bạn đã tạo, như sau:

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

Điều này sẽ đảm bảo các mục đặt hàng sẽ được bao gồm trong kết quả, thay vì thực hiện một truy vấn khác để tìm nạp chúng.

Sau đó, bạn có thể chuyển $order vào chế độ xem:

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

(Bạn có thể chỉ cần bỏ qua đơn đặt hàng Số là đơn đặt hàng thực tế)

Sau đó, bạn có thể truy cập vào order trong chế độ xem của bạn và lặp lại các items như thế này:

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

FK

Một mẹo khác có thể là cập nhật bảng của bạn để sử dụng các chỉ mục nhằm cải thiện hiệu suất và làm cho nó gọn gàng, như FK bạn đề cập trong nhận xét về quá trình di chuyển tạo của bạn. Bạn có thể thực hiện di chuyển để cập nhật nó, như:

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

Và / hoặc mở rộng điều này, theo nhu cầu của bạn (xếp tầng, v.v.).




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm thế nào để kiểm tra xem trường là null hay trống trong MySQL?

  2. lỗi khi sử dụng mysql_real_escape_string ()

  3. ERRO 1215. MySql InnoDB

  4. MySQL không sử dụng chỉ mục với mệnh đề WHERE IN?

  5. Mysql - Đổi tên tất cả các bảng và cột thành chữ thường?