Rumah  >  Artikel  >  rangka kerja php  >  Cara menggunakan skop dalam laravel

Cara menggunakan skop dalam laravel

WBOY
WBOYasal
2022-06-09 11:15:313205semak imbas

Dalam laravel, skop digunakan untuk memproses data dalam model, anda boleh menentukan kaedah pada permulaan skop Kaedah ini boleh dipanggil terus melalui model dan dipanggil skop pertanyaan sintaks ialah "skop fungsi awam" Gunakan huruf besar pada huruf pertama perkataan ($query){...}".

Cara menggunakan skop dalam laravel

Persekitaran pengendalian artikel ini: sistem Windows 10, versi Laravel 8, komputer Dell G3.

Cara menggunakan skop dalam laravel

Skop dalam laravel

Data (milik atau tidak) diproses dalam templat laravel (tambah, padam, ubah suai, semak), diperkenalkan Gunakan skop untuk memproses

, iaitu menambah skop awalan dalam kaedah definisi templat.

Ringkasnya, model dalam Laravel boleh menentukan kaedah pada permulaan skop, dan kaedah ini boleh dipanggil terus melalui model. Pendekatan jenis ini juga dipanggil skop pertanyaan.

Pertanyaan bersyarat sering digunakan dalam pertanyaan data Beberapa syarat pertanyaan ini adalah sama.

Skop biasa

Definisi

Nama kaedah ialah skop dengan huruf pertama huruf besar (ini boleh ditakrifkan sesuka hati)

public function scopeStatus($query)
{
    return $query->where('status',1);
}

Gunakan

untuk memanggil fungsi dengan huruf kecil huruf pertama selepas mengalih keluar skop.

scopeStatus () status panggilan ().

User::status()->get();

Skop global

Kita perlu mentakrifkan semula kaedah but Selepas menyepadukan but kelas induk, tambahkan skop global, supaya ia akan digunakan secara global secara lalai.

protected static function boot()
{
    parent::boot(); // TODO: Change the autogenerated stub
    static::addGlobalScope('avaiable',function (Builder $builder){
        $builder->whereIn('status', [0, 1]);
    });
}

Kadangkala apabila kami mempunyai pertanyaan yang tidak memerlukan skop global ini, kami hanya perlu mengalih keluarnya.

Gunakan kaedah withOutGlobalScope()

Post::withOutGlobalScope('avaiable')->get();

[Cadangan berkaitan: tutorial video laravel]

Atas ialah kandungan terperinci Cara menggunakan skop dalam laravel. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn