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

Tham số Laravel hasM nhiều và thuộc về

Để đơn giản hóa cú pháp, hãy nghĩ đến return $this->hasMany('App\Comment', 'foreign_key', 'local_key'); tham số như:

  1. Mô hình bạn muốn liên kết tới
  2. Cột của bảng ngoài (bảng mà bạn đang liên kết đến) liên kết lại với id của bảng hiện tại (trừ khi bạn đang chỉ định tham số thứ ba, trong trường hợp đó nó sẽ sử dụng tham số đó)
  3. Cột của bảng hiện tại sẽ được sử dụng - tức là nếu bạn không muốn khóa ngoại của bảng khác liên kết với id cột của bảng hiện tại

Trong trường hợp của bạn, vì bạn đã sử dụng store_id trong libraries bàn, bạn đã làm cho cuộc sống trở nên dễ dàng cho chính mình. Bên dưới sẽ hoạt động hoàn hảo khi được xác định trong Store của bạn mô hình:

public function libraries()
{
    return $this->hasMany('App\Library');
}

Phía sau, Laravel sẽ tự động liên kết id cột của Store vào store_id cột của Library bảng.

Nếu bạn muốn xác định nó một cách rõ ràng, thì bạn sẽ làm như thế này:

public function libraries(){
    return $this->hasMany('App\Library', 'store_id','id');
}
  • Một tiêu chuẩn mô hình là các hàm được đặt tên riêng trả về một Thuộc tính, trong khi một hàm số nhiều trả về một hasMany (tức là. $store->libraries() or $library->store() ).


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. truy vấn mysql PHP:Tôi muốn một mục cụ thể là đầu tiên và sau đó sắp xếp các mục còn lại

  2. Làm cách nào để lưu trữ múi giờ của người dùng trong mysql?

  3. Làm thế nào để cập nhật trường để thêm giá trị vào giá trị hiện có?

  4. Cách tốt nhất để quản lý ngày tháng trên PHP, MySQL, v.v. là gì?

  5. android.content.res.Resources $ NotFoundException:Chuỗi tài nguyên ID # 0x2 Cơ sở dữ liệu