我在一个使用自定义 PK 和 FK 的项目中,我正在尝试建立一对一的关系。
例如,在 Employee.php 中:
public function title()
{
return $this->hasOne('App\Title', 'TitleID');
}
在 Tinker 上,我可以像这样检索员工 TitleID:
$employee = Employee::first();
$employee->TitleID;
返回:
“6”
我现在做了一个模型:Title.php:
class Title extends Model
{
protected $table = "dbo.title";
protected $primaryKey = 'TitleID';
}
$title = Title::all();
在 Tinker 中运行时,我可以正确检索此模型的内容。
我在 Employee.php 中建立了一个新的关系:
public function title()
{
return $this->hasOne('App\Title', 'TitleID');
}
但是,当我运行时,在 Tinker(我已重新启动)中:
$employee = Employee::first();
$employee->title()->get();
它返回:
Illuminate\Database\Eloquent\Collection {#3027 all: [], }
我做了什么来错误地建立这种关系?