1

I am wondering if I can create a custom validation message for a specific field.

i have tried using this

$rules = [
            'nama' =>'required',
            'spesialis' =>'required',
            'alamat' => 'required',
            'telp' =>'required',
            'tanggalMulai' => 'required'
        ];

        $message=[
            'required' => '* :attribute Harus Diisi'
        ];

        $this->validate($request,$rules,$message);

Dokter::create([
            'nama' => $request->nama,
            'spesialis' =>$request->spesialis,
            'alamat' => $request->alamat,
            'telp' => $request->telp,
            'tanggalMulai' => $request->tglMulai
            ]);

        return redirect()->route('dokter');

but after i using this, i can't save my data

This is how i solve the problem

$message=[
            'required' => '* :attribute harus diisi',
            'min' =>'*:attribute minimal :min karakter'
        ];

        $validatedData = $request->validate([
            'nama' =>'required',
            'spesialis' =>'required',
            'alamat' => 'required',
            'telp' =>'required|numeric|min:9',
            'tanggalMulai' => 'required|date'
        ],$message);

        Dokter::create($validatedData,$message);
evvnnxx18
  • 77
  • 7
  • 2
    Possible duplicate of [Laravel 5.3 return custom error message using $this->validate()](https://stackoverflow.com/questions/40067212/laravel-5-3-return-custom-error-message-using-this-validate) – Zain Farooq Sep 17 '19 at 05:17

1 Answers1

1

You've to pass custom messages per particular field.

$message=[
    'nama.required' => 'name field is required',
    'spesialis.required' => 'spesialis field is required'
];
Dilip Hirapara
  • 14,810
  • 3
  • 27
  • 49