私の Laravel 8 アプリケーションには、次のモデルがあります。
会社
protected $fillable = [
'id',
'name',
'website',
'company_logo',
'registration_number',
'date_established',
'address',
];
従業員
protected $fillable = [
'id',
'company_id',
'user_id',
'first_name',
'last_name',
'other_name',
'gender',
];
public function company()
{
return $this->belongsTo(Company::class,'company_id','id');
}
public function user()
{
return $this->belongsTo(User::class,'user_id','id');
}
私はこれを始めましたが、途中で立ち往生しました。ログインしたユーザーに基づいて会社の詳細を選択したい。会社のテーブルは、メイン テーブルにする必要があります。
public function getMyCompany()
{
try {
$userId = Auth::user()->id;
$employeeId = Employee::where('user_id', $userId)->first();
$company = Company::...;
return $this->success('Company successfully Retrieved.', [
'company' => $company
]);
} catch (\Exception $e) {
Log::error($e);
return $this->error($e->getMessage(), $e->getCode());
}
}
以下を使用してこれを達成するにはどうすればよいですか (会社のすべての詳細を選択してください):
$company = Company::...;
メインモデルの製作