作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我必须连接三个表。用户、汽车、报价。每辆车都可以有很多优惠。用户可以拥有多辆汽车(即连接)。我现在的任务是将 Car 与他们的报价和用户联系起来,但我现在有点困惑。看看我的迁移和模型。问题很简单,如何将汽车与优惠和用户联系起来。一位用户可以发送一份报价。
汽车迁移:
$table->bigIncrements('id');
$table->string('car_type');
$table->string('mark');
$table->longText('car_accessories');
$table->unsignedInteger('user_id');
$table->foreign('user_id')->references('id')->on('users')->onDelete('cascade');
$table->timestamps();
提供迁移:
$table->increments('id');
$table->integer('price');
$table->unsignedSmallInteger('user_id');
$table->unsignedSmallInteger('car_id');
$table->foreign('user_id')->references('id')->on('users')->onDelete('cascade');
$table->foreign('car_id')->references('id')->on('cars')->onDelete('cascade');
$table->timestamps();
车型:
public function user() {
return $this->belongsTo('App\User');
}
用户模型:
public function cars(){
return $this->hasMany('App\Car', 'user_id');
}
提供模型:
?
最佳答案
正如你所说:
1 用户到许多 汽车
1 用户到1 优惠
1汽车到许多 优惠
所以,这里有 3 个关系,对于每个关系,您还必须声明逆
。所以,这里总共必须有 6 个模型中的关系函数。
用户模型:
public function cars(){
return $this->hasMany('App\Car', 'user_id');
}
public function offer(){
return $this->hasOne('App\Offer');
}
车型:
public function user() {
return $this->belongsTo('App\User');
}
public function offers() {
return $this->belongsTo('App\Offer');
}
提供模型:
public function car() {
return $this->belongsTo('App\Car');
}
public function user() {
return $this->belongsTo('App\User');
}
关于php - 如何将表 User、Offers 和 Car 与关系 mysql Laravel 连接起来,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54942715/
我是一名优秀的程序员,十分优秀!