Rumah >pembangunan bahagian belakang >tutorial php >laravel如何判断是修改还是添加

laravel如何判断是修改还是添加

PHPz
PHPzasal
2016-06-06 20:31:152255semak imbas

laravel如何判断是修改还是添加

laravel如何判断是修改还是添加?

问题:

/**
     * 自定义验证规则rules
     *
     * @return array
     */
    public function rules()
    {
        return [
            'name'       => 'unique:products,name',
            'sort' => 'required|',
            'body'     => 'required|min:20',
            'price'  => 'required',
            'thumb'       => 'required',
            'status'      => 'boolean',
        ];
 
        return $rules;
    }

在这里验证了 name 是否重复, 在添加产品的时候做验证

但在修改产品的时候 也用到了该验证,想知道,修改产品的 产品名称 不变 会提醒产品名称重复了,

这里可以做判断吗 ?

方法:

/**
     * 自定义验证规则rules
     *
     * @return array
     */
    public function rules()
    {
        $rules = [
             'sort' => 'required|',
            'body'     => 'required|min:20',
            'price'  => 'required',
            'thumb'       => 'required',
            'status'      => 'boolean',
        ];
 
        //根据RESTful请求的方法来判断是新建还是更新,如果是PUT请求的话
        if($this->method() === "PUT"){
            // 更新产品信息的时候,你在后面可以限制一个id,这个时候如果name刚好在这个id里就不会提醒产品重复了
            // $product = ……
            $rules['name'] = 'unique:products,name,id,'.$product->id;
        }else{
 
            $rules['name'] = 'unique:products,name';
        }
 
        return $rules;
    }

可以改成这样。

推荐:《laravel开发

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn