Php 与复合键的雄辩关系
我使用的是Eloquent,我成功地在laravel中设置了复合键,使用的特征如下所示: 但是,现在到处都出现以下错误:Php 与复合键的雄辩关系,php,laravel,eloquent,Php,Laravel,Eloquent,我使用的是Eloquent,我成功地在laravel中设置了复合键,使用的特征如下所示: 但是,现在到处都出现以下错误: ErrorException in BelongsTo.php line 82: Array to string conversion (View: /home/www/app/resources/views/relatorios/show.blade.php) 我理解这是因为现在我的模型有一个复合主键: protected $primaryKey = array('cl
ErrorException in BelongsTo.php line 82:
Array to string conversion (View: /home/www/app/resources/views/relatorios/show.blade.php)
我理解这是因为现在我的模型有一个复合主键:
protected $primaryKey = array('cliente', 'id');
在我的关系中:
public function medico()
{
return $this->belongsTo('App\Medico','medico');
}
所以这当然是错误的
我试图修改为:
public function medico()
{
return $this->belongsTo('App\Medico',['medico','cliente'],['id','cliente']);;
}
但是没有成功
有什么想法吗?因为这种特质是如何运作的,如果你想将Elounce的13条关系定义与这种特质结合使用,你必须重写它们。你不应该在laravel中使用复合键。你所指的特征不处理关系定义;在这种情况下,您可能希望通过组合两个关系的ID来“构建”实体ID,并将它们作为常规的
索引分开。由于该特性的工作原理,如果您希望将它们与此特性一起使用,您必须重新编写Eloquent的所有13个关系定义。你不应该在laravel中使用复合键。你所指的特征不处理关系定义;在这种情况下,您可能希望通过组合两个关系的ID来“构建”实体ID,并将它们作为常规索引分开。