laravel コレクション メソッドの処理に関連する問題を解決するために助けが必要です。
私は学習ウェブサイトを作成していcourrse
ますcourse episode
私はテーブルmeilisearch
で検索するのに使用しました。course_episode
$query = $request->s;
$episodes = CourseEpisode::search($query)
->get();
エピソードを取得した後、コレクションのメソッドを使用map
しました。reject
$episodes->map(function ($episode) {
$course = Course::where('id', $episode->course_id)
->select('id', 'title', 'slug', 'publish_date_time', 'publishing_status')->first();
$episode->course = $course;
return $episode;
})->reject(function ($item) {
return (Carbon::createFromFormat('Y-m-d H:i:s', $item->course->publish_date_time)->gt(Carbon::now()) || $item->course->publishing_status === 'drafted');
});
publish_date_time が未来のコースと下書きされたコースに関連するエピソードを却下することにしました。
メソッドでコースを取得し、それmap
をエピソードに添付します。
メソッドdd()
で関数を使用しました。reject
正しい結果を返す条件。ただし、reject
関数は結果をフィルタリングしません。