ライアン・サックス:
私は、データベース通知を作成しています。InterviewRequestReceived.php:私は2つの通知クラスがあります。
$user = Auth::user();
$interviewRequestReceived = InterviewRequestsReceived::latest()->where('user_id', $user->id)->get();
return [
'date_time1' => $interviewRequestReceived[$interviewRequestReceived->count() - 1]->latest()->get('date_time1'),
'date_time2' => $interviewRequestReceived[$interviewRequestReceived->count() - 1]->latest()->get('date_time2')
];
そして、InterviewRequestSent.php:
public function toDatabase($notifiable)
{
$user = Auth::user();
$interviewRequestSent = InterviewRequestsSent::latest()->where('user_id', $user->id)->get();
return [
'date_time1' => $interviewRequestSent[$interviewRequestSent->count() - 1]->latest()->get('date_time1'),
'date_time2' => $interviewRequestSent[$interviewRequestSent->count() - 1]->latest()->get('date_time2')
];
}
私は3つのテーブルを持っています。interview_requests_receiveds、interview_requests_sentsと私は通知表を作成し、移行しました。私のフォームで、私は、日時フィールドの2つのオプションを持っているので、雇用主は、彼らが候補者をインタビューするために働くだろう2可能な日付と時刻を選択することができます。私のフォームは動作しています。私の通知は、それだけではなく、最後に挿入されたレコードの、ユーザーの日付と時刻、ログインのすべてを挿入しますを除いて取り組んでいます。
私は)(最新のを使用しようとしているが、それは働いていません。
Sehdev:
Laravelのドキュメントあたりとして
latest
およびoldest
方法は、あなたが簡単にできるようにする日付で結果を注文します。デフォルトでは、結果がで注文することになるcreated_at
コラム。それとも、あなたがでソートしたいという列名を渡すことができます
あなたは代わりに、最新のを使用したい場合はget()
、使用するfirst()
機能:
すでに存在する場合はcreated_at
、あなたの表の列は、
$interviewRequestSent = InterviewRequestsSent::latest()->where('user_id', $user->id)->first();
OR
あなたがに基づいて最後のレコードを取得したいと仮定すると、id
列
$interviewRequestSent = InterviewRequestsSent::latest('id')->where('user_id', $user->id)->first();
それとも、あなたはどんな以下の方法を使用して最後のレコードを取得することができます
InterviewRequestsSent::where('user_id', $user->id)->last();
OR
InterviewRequestsSent::where('user_id', $user->id)->orderBy('id', 'desc')->first();`
参照: