1. ホーム
  2. laravel

[解決済み] Eloquent - と等しくない場合

2022-04-27 03:15:51

質問

現在、Laravelの最新バージョンを使用しています。

以下のクエリを試してみました。

Code::where('to_be_used_by_user_id', '<>' , 2)->get()
Code::whereNotIn('to_be_used_by_user_id', [2])->get()
Code::where('to_be_used_by_user_id', 'NOT IN', 2)->get()

を除くすべてのレコードを返すのが理想的です。 user_id = 2 しかし、これは空白の配列を返します。どのように対処したらよいでしょうか?

Code::all()

これは4つのレコードをすべて返します。

コードモデルです。

<?php namespace App;

use Illuminate\Database\Eloquent\Model;

class Code extends Model
{

    protected $fillable = ['value', 'registration_id', 'generated_for_user_id', 'to_be_used_by_user_id', 'code_type_id', 'is_used'];

    public function code_type()
    {
        return $this->belongsTo('App\CodeType');
    }

}

解決方法は?

使用方法 where を使用し != 演算子と組み合わせて whereNull

Code::where('to_be_used_by_user_id', '!=' , 2)->orWhereNull('to_be_used_by_user_id')->get()