Table of Contents
How to use scope in laravel
Home PHP Framework Laravel How to use scope in laravel

How to use scope in laravel

Jun 09, 2022 am 11:15 AM
laravel

In laravel, scope is used to process data in the model. You can define methods at the beginning of the scope in the model. These methods can be called directly through the model and are called query scopes. The syntax is "public function scope" Capitalize the first letter of the word ($query){...}".

How to use scope in laravel

#The operating environment of this article: Windows 10 system, Laravel version 8, Dell G3 computer.

How to use scope in laravel

Scope scope in laravel

In laravel, the data (belonging or not) processed in the template (add, delete, modify, check) is introduced Use scope to handle

That is, add the prefix scope in the template definition method.

In short, the model in Laravel can define methods at the beginning of the scope, and these methods can be called directly through the model. This type of approach is also called query scope.

Conditional queries are often used in data queries. Some of these query conditions are the same. Scope can realize the reuse of these same query conditions.

Normal scope

Definition

The method name is scope with the first letter in capital letters (this can be defined at will)

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

Use

The function whose first letter is lowercase is called after removing the scope.

scopeStatus () calls status ().

User::status()->get();
Copy after login

Global scope

We need to redefine the boot method, integrate the parent class boot, and add the global scope, so that it will be used globally by default.

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

Sometimes when we have queries that don’t need this global scope, we just need to remove it.

Use withOutGlobalScope() method

Post::withOutGlobalScope('avaiable')->get();
Copy after login

[Related recommendations: laravel video tutorial]

The above is the detailed content of How to use scope in laravel. For more information, please follow other related articles on the PHP Chinese website!

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
2 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
Repo: How To Revive Teammates
4 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: How To Get Giant Seeds
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
2 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
Repo: How To Revive Teammates
4 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: How To Get Giant Seeds
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌

Hot Article Tags

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

PHP vs. Flutter: The best choice for mobile development PHP vs. Flutter: The best choice for mobile development May 06, 2024 pm 10:45 PM

PHP vs. Flutter: The best choice for mobile development

Laravel - Artisan Commands Laravel - Artisan Commands Aug 27, 2024 am 10:51 AM

Laravel - Artisan Commands

How to use object-relational mapping (ORM) in PHP to simplify database operations? How to use object-relational mapping (ORM) in PHP to simplify database operations? May 07, 2024 am 08:39 AM

How to use object-relational mapping (ORM) in PHP to simplify database operations?

Analysis of the advantages and disadvantages of PHP unit testing tools Analysis of the advantages and disadvantages of PHP unit testing tools May 06, 2024 pm 10:51 PM

Analysis of the advantages and disadvantages of PHP unit testing tools

PHP distributed system architecture and practice PHP distributed system architecture and practice May 04, 2024 am 10:33 AM

PHP distributed system architecture and practice

Comparison of the latest versions of Laravel and CodeIgniter Comparison of the latest versions of Laravel and CodeIgniter Jun 05, 2024 pm 05:29 PM

Comparison of the latest versions of Laravel and CodeIgniter

How do the data processing capabilities in Laravel and CodeIgniter compare? How do the data processing capabilities in Laravel and CodeIgniter compare? Jun 01, 2024 pm 01:34 PM

How do the data processing capabilities in Laravel and CodeIgniter compare?

PHP code unit testing and integration testing PHP code unit testing and integration testing May 07, 2024 am 08:00 AM

PHP code unit testing and integration testing

See all articles