【Laravel 8.x】ユーザが既に登録済かの確認方法

Laravel

モデルを作成

データベースを操作したい場合はモデルを作成する必要があるらしい。

以下のコマンドを実行する。※データベース名usersなら単数形のモデル名はUserとする

php artisan make:model User

app/Model/User.phpというファイルができる。

色々設定できるらしいが特にしなくても使えるようなのでそのままで使う。

<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;

class User extends Model
{
    use HasFactory;
}

ユーザIDが登録済か確認

設定は完了したので、既にデータベースにユーザを登録した前提として、以下のようにして既に存在しているならtrue、未登録であればnullとなる。

app/Http/Controllers/UserController.php

<?php

namespace App\Http\Controllers;

use App\Http\Controllers\Controller;
use App\Models\User;
use Illuminate\Http\Request;

class UsersController extends Controller
{

public function index(){

$isExist = User::where('userid','testid3')->first();

if($isExist){
echo "exist";
}else{
$user = new User();
$user->userid = 'testid3';
$user->name = 'test';
$user->email = 'test@test';
$user->password = 'password';
$user->save();
}

}

public function UpdateData(){

}

}

これで未登録の場合は登録、登録済の場合は何もしないとできるようになりました。

以上です。

コメント

タイトルとURLをコピーしました