Laravel 5.3验证多个字段

时间:2016-10-13 20:57:59

标签: php laravel validation

我需要使用验证器在Laravel 5.3中进行验证,但经过一些搜索后我找不到解决方案,这就是我在这里的原因。

例如,我有3个表: 用户(可以有多个商店,可以有多个人) 商店(可以有多个人) 人(可以有多个商店) person_store

因此,在用户登录后,他需要:

  1. 选择商店
  2. 选择一个人
  3. 表示人员姓名
  4. 此时,用户位于http://example.dev/store/1/user/2之类的页面中,其中包含表明其针脚的表单。

    当用户提交此表单时,我需要验证:

    • person.id = person id(网址中的值)
    • person.user_id =用户ID(会话中的值)
    • person.pin = pin(在表单页面上提交的值的哈希)
    • person_store.store_id =商店ID(网址中的值)
    • person_store.person_id = person id(url中的值)

    最好的方法是什么?任何一个例子?

    protected function validator(array $data)
    {
        return Validator::make($data, [
            'pin' => 'required',
        ]);
    }
    
    编辑(我现在所拥有的):

    public function login(Request $request, $storeId, $personId)
    {
        $pin = $request->input('pin', '');
        $store = Store::findOrFail($storeId);
        $person = Person::findOrFail($personId);
    
        if (!Hash::check($pin, $person->pin)) {
            return $this->showPersonLoginForm($request, $storeId, $personId);
        } else {
            if (Hash::needsRehash($person->pin)) {
                $person->pin = Hash::make($pin);
                $person->save();
            }
        }
    }
    

    谢谢。

0 个答案:

没有答案