Laravel 8 Eloquent 또는 WhereHas 조건
                                            
                                                
                                                
                                                
                                                
                                                
                                                 3721 단어  orwherehaslaravelphplaravel8
                    
laravel 8의 orWhereHas() 조건에 대해 사용자, 국가 및 주와 같은 세 개의 테이블을 사용하고 사용자 테이블에 country_id 및 state_id 관계를 추가합니다. 또한 laravel 8에서 orWhereHas() 조건과 함께 whereHas()를 사용합니다.
따라서 laravel 8 orWhereHas() 관계 또는 laravel 8의 orwherehas 조건을 봅시다.
Example 1: Laravel orWhereHas()
라라벨의 설득력 있는 whereHas() 메소드는 기본적으로 has()와 동일하게 작동하지만 관련 모델이 확인할 추가 필터를 지정할 수 있습니다.
public function index()
{
    $name = 'California';
    $users = User::with('country','state')
                    ->whereHas('country', function ($query) use($name){
                        $query->where('name', 'like', '%'.$name.'%');
                    })
                    ->orWhereHas('state', function ($query) use($name){
                        $query->where('name', 'like', '%'.$name.'%');
                    })
                    ->get()
                    ->toArray();
}
Read More: How To Push Array Element In Node.js
예: 2
앱/모델/User.php
<?php
namespace App\Models;
use Illuminate\Contracts\Auth\MustVerifyEmail;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Foundation\Auth\User as Authenticatable;
class User extends Authenticatable
{
    protected $fillable = [
        'name',
        'email',
        'password',
    ]; 
    public function country()
    {
        return $this->belongsTo(Country::class);
    }
    public function state()
    {
        return $this->belongsTo(State::class);
    }
}
앱/모델/Country.php
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
class Country extends Model
{
    use HasFactory;
}
앱/모델/State.php
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
class State extends Model
{
    use HasFactory;
}
Read More: Laravel 8 Eloquent whereHas Condition
앱/Http/컨트롤러/UserController.php
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Models\User;
class UserController extends Controller
{
    public function index()
    {
        $name = 'California';
        $users = User::with('country','state')
                        ->whereHas('country', function ($query) use($name){
                            $query->where('name', 'like', '%'.$name.'%');
                        })
                        ->orWhereHas('state', function ($query) use($name){
                            $query->where('name', 'like', '%'.$name.'%');
                        })
                        ->get()
                        ->toArray();  
    }
}
Reference
이 문제에 관하여(Laravel 8 Eloquent 또는 WhereHas 조건), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/techsolutionstuff/laravel-8-eloquent-orwherehas-condition-3nb7텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
                                
                                
                                
                                
                                
                                우수한 개발자 콘텐츠 발견에 전념
                                (Collection and Share based on the CC Protocol.)