我正在尝试调用此hasOne
函数,但是我有2个主键,我该怎么做?
public function user_ratings()
{
return $this->hasOne('App\User_rating', 'id_user', 'id');
}
用户评分表
Schema::create('user_rating', function (Blueprint $table) {
$table->integer('id_user')->unsigned(); //Increments es unsigned por defecto
$table->integer('id_item')->unsigned();
$table->integer('rating');
$table->text('comment');
$table->timestamps();
$table->primary(['id_user', 'id_item']);
$table->foreign('id_user')->references('id')->on('users')
->onUpdate('restrict')
->onDelete('cascade');
$table->foreign('id_item')->references('id')->on('products')
->onUpdate('restrict')
->onDelete('cascade');
});
这是我的数据库
答案 0 :(得分:0)
public function user_ratings()
{
return $this->hasOne('App\User_rating', 'id_user', 'id');
}
第二个参数是外键,第三个参数是本地键。
答案 1 :(得分:0)
虽然Laravel框架支持使用复合主键创建数据库表,但口才(ORM)不支持它们,而probably never will。