つばさのWebメモです。実務・個人開発で調べた本当に素のメモなので、ご活用ください。 アドバイスや間違いの指摘など遠慮なさらず、DMなどでドンドンください!改善します😘(→ @basabasa8770

▼目次▼

Laravel

$comments = Comment::orderBy('id', 'DESC')->take(10)->get();

laravelのAPIリソース - Qiita

Docker×Laravel環境で、Gmailを メールサーバーとして使用する

Laravelのエラー:Fatal error: require(): Failed opening required '/project/vendor/autoload.php' (include_path='.:') in /project/artisan on line 18 - Qiita

【Laravel】transactionメソッド - Qiita

Laravel リレーション 中間テーブルのカラム取得 withPivot()

【Laravel】DB登録値取得時のfind()、get()、first()の返り値早見表 - Qiita

関係
一対一 hasOne従 belongTo主
一対多 hasMany従 belongTo主
多対多 belongMany中間テーブル belongMany中間テーブル
// 先輩が書いたコード
public function societyEvents(EventRequest $request, Society $society, SocietyContract $societyContract): AnonymousResourceCollection
    {
        $eventIds = SocietyContractPlanEvent::where('society_contract_id', $societyContract->id)
        ->whereHas('plan', function ($query) use ($societyContract) {
            $query
                ->where('society_contract_type_id', $societyContract->society_contract_type_id)
                ->where('product_type', 1)
                ->where('delflag', "0");
        })->pluck('event_id');
        return EventResource::collection(
            Event::whereIn('eventno', $eventIds)->get()
        );
    }
// 自分が書いたコード
public function societyEvents(EventRequest $request, Society $society, SocietyContract $societyContract): AnonymousResourceCollection
    {
        $societyContractTypeId = SocietyContract::where('id', $societyContract->id)->pluck('society_contract_type_id');
        $planIds = Plan::whereIn('society_contract_type_id', $societyContractTypeId)->where('product_type', 1)->pluck('id');
        $societycontractplaneventIds = SocietyContractPlanEvent::whereIn('plan_id', $planIds)->pluck('event_id');
        $events = Event::whereIn('eventno', $societycontractplaneventIds)->get();

        return EventResource::collection($events);
    }

JavaScript