0

How to edit text "validation.unique" in laravel 8 ?

My Controller

public function customRegistration(Request $request)
{  
    
    $request->validate([
        'name'      => 'required',
        'role_id'   => 'required',
        'username'  => 'required|unique:tbl_users',
        'password'  => 'required|min:12',
        'status_id' => 'required'
    ]);
       
    $data = $request->all();
    $check = $this->create($data);

    if ($request->role_id == 2) {
        return redirect("admin-master/show_vendor")->with('success', 'Pengguna Berhasil Di Daftarkan');
    }else{
        return redirect("admin-master/show_pengawas")->with('success', 'Pengguna Berhasil Di Daftarkan');
    }
}

I've changed the message in resouce/lang/en/validation.php

'unique' => 'The :attribute has already been taken.'

why the message that appears validation.unique ? should be has already been taken.

Error Message View

@if ($message = Session::get('success'))
          <div class="alert alert-success">
           <p>{{ $message }}</p>
          </div>
          @endif        
          @if ($message = Session::get('delete'))
          <div class="alert alert-danger">
            <p>{{ $message }}</p>
          </div>
          @endif
          @if ($errors->any())
              <div class="alert alert-danger">
                <ul>
                  @foreach ($errors->all() as $error)
                    {{ $error }}
                  @endforeach
                </ul>
              </div>
            @endif

enter image description here

mfahmifadh
  • 87
  • 1
  • 10

1 Answers1

0

we are in laravel 8 now and I would suggest using FormRequest for the SOLID principle. with that said, form request has a method messages() in return you will customize the message and it is fairly simple