Dev to webs {Coding…}

ร บทเรียนฟรีด้านการพัฒนาซอฟต์แวร์ ที่ครอบคลุมเนื้อหาหลากหลาย ตั้งแต่การเขียนโค้ดพื้นฐานไปจนถึงเทคนิคขั้นสูง

บทที่ 34: การใช้ Custom Validation Messages

🔹 เกริ่นนำ

การแสดงข้อความแจ้งเตือนเมื่อข้อมูลที่ผู้ใช้กรอกไม่ผ่านการตรวจสอบ (Validation) ถือเป็นประสบการณ์ผู้ใช้ที่สำคัญ Laravel มีข้อความแจ้งเตือนที่ตั้งมาให้ล่วงหน้าในภาษาอังกฤษ แต่เราสามารถปรับแต่งข้อความให้เหมาะกับแอปของเรา หรือแสดงข้อความเป็นภาษาไทยได้ง่าย ๆ

บทนี้จะสอนวิธีการกำหนดข้อความ Validation เองทั้งใน Controller และใน Form Request พร้อมตัวอย่างการใช้งานจริงที่สามารถนำไปใช้ได้ทันที

🔸 การใช้ Custom Messages ใน Controller

public function register(Request $request)
{
    $messages = [
        'name.required' => 'กรุณากรอกชื่อของคุณ',
        'email.required' => 'กรุณากรอกอีเมล',
        'email.email' => 'รูปแบบอีเมลไม่ถูกต้อง',
        'password.required' => 'กรุณากรอกรหัสผ่าน',
        'password.confirmed' => 'รหัสผ่านไม่ตรงกัน'
    ];

    $validated = $request->validate([
        'name' => 'required',
        'email' => 'required|email',
        'password' => 'required|confirmed'
    ], $messages);
}

🔸 การใช้กับ Form Request

หากคุณใช้ Form Request Class สามารถกำหนดข้อความได้ในเมธอด messages()

public function messages()
{
    return [
        'name.required' => 'กรุณากรอกชื่อของคุณ',
        'email.required' => 'ต้องระบุอีเมลด้วย',
    ];
}

💡 คำสั่งนี้จะ override ข้อความเดิมของ Laravel โดยอัตโนมัติ