cari

Rumah  >  Soal Jawab  >  teks badan

Cara menambah data dalam laravel Gunakan valdiate untuk mengesahkan sama ada data wujud dalam jadual hubungan

Apabila menambah data, adakah mungkin untuk mengesahkan sama ada data wujud dalam jadual hubungan melalui pengesahan?

黄舟黄舟2754 hari yang lalu531

membalas semua(3)saya akan balas

  • 某草草

    某草草2017-05-16 16:50:44

    https://laravel.com/docs/5.3/...

    balas
    0
  • 迷茫

    迷茫2017-05-16 16:50:44

    1. Anda boleh menyesuaikan pengesahan, nampaknya agak rumit... Tahap saya terhad, anda boleh membaca dokumen rasmi sendiri

    2. Anda juga boleh menganggapnya sebagai kaedah yang mudah dan kasar, tulis logik pengesahan pertanyaan jadual gabungan anda di Controller dan ubah hala secara manual dan buang ralat jika terdapat pengecualian, seperti yang ditunjukkan dalam kod berikut

        public function store(Request $request)
        {
            $this->validate($request, [
                'password' => 'required|min:6|max:100',
                'newPassword' => 'required|min:6|max:100',
                'newPasswordConfirm' => 'required|same:newPassword|min:6|max:100',
            ], [], [
                'password' => '旧密码',
                'newPassword' => '新密码',
                'newPasswordConfirm' => '确认新密码',
            ]);
    
            #这个地方就是个自定异常的演示, 并不是你要的连表查询, 这里只提供一个思路
            if (!\Hash::check($request->get('password'), \Auth::user()->password)) {
                return redirect()->back()->withErrors(['password' => '旧密码错误']);
            }
    
        }

    balas
    0
  • 仅有的幸福

    仅有的幸福2017-05-16 16:50:44

    Ya, gunakan existsperaturan, seperti

    'exists:表名,字段名'
    

    Bergantung pada situasi anda, menggunakan peraturan terbina dalam tidak mencukupi dan anda perlu membuat sendiri peraturan baharu Berikut ialah contoh membuat peraturan untuk mengesahkan bahasa Cina

    $validator = app('validator');
    $validator->extend('chinese', function($attribute, $value, $parameters, $validator) {
        return Validator::chinese($value);
    });
    $validator->replacer("chinese", function($message, $attribute, $rule, $parameters) {
        if ($message == 'validation.chinese') {
            return "属性 {$attribute} 必须是合法的中文";
        }
    
        return $message;
    });
    

    Rujuk bahagian Peraturan Pengesahan Tersuai dokumen untuk butiran.

    balas
    0
  • Batalbalas