当前位置: 首页 > 知识库问答 >
问题:

laravel验证,存储和提升uniques值,尝试获取非对象的属性

卞俊贤
2023-03-14

我用laravel 8

我想验证数据,并使用一个表单请求来存储和更新它们。

我使用ignore($this->post->id)来更新唯一数据。

对于update,它起作用了,但是当我想存储一个新记录时,它会给我错误

尝试获取非对象的属性“id”

这是我的StorePostRequest:


public function rules()
    {
        return [
            'user_id'=>['required'],
            'category_id'=>['required'],
            'title'=>['required','max:20' ,Rule::unique('posts')->ignore($this->post->id)],
            'body'=>['required'],
            'picture'=>['required'],
            'study_time'=>['required' ,'numeric' , 'max:'],
            'tags'=>['required'],
            'status'=>['required'],

        ];
    }

    public function message(){


        $message=[

            'user_id.required'=>'لطفا نام نویسنده نظر را وارد کنید',

            'category_id.required'=>'لطفا مجموعه مورد نظر را انتخاب کنید',

            'title.required'=>'لطفا عنوان را وارد کنید',

            'body.required'=>'لطفا توضیحات را وارد کنید',

            'picture.required'=>'لطفا تصویر را وارد کنید',

            'study_time.required'=>'لطفا زمان مطالعه را وارد کنید',

            'tags.required'=>'لطفا تگ را انتخاب کنید' ,

            'status.required'=>'لطفا وضعیت را انتخاب کنید',

        ];

        return array_merge(parent::messages(), $message);
    }
}

我怎么能搞定它?感谢你的帮助:*

共有1个答案

卫子平
2023-03-14
public function rules()
{
       $rules = [
            'user_id'=>['required'],
            'category_id'=>['required'],
            'body'=>['required'],
            'picture'=>['required'],
            'study_time'=>['required','numeric'],
            'tags'=>['required'],
            'status'=>['required'],
        ];

     if($this->method() == 'POST'){
       $rules['title'] = ['required','max:20', Rule::unique('posts')];
     }else{
       $rules['title'] = ['required','max:20' ,Rule::unique('posts')->ignore($this->post->id)];
     }

      return $rules;
 }
 类似资料:
  • 在响应中,我们接收一个xml文件,然后转换为SimpleXMLElement,然后根据需要访问元素和属性。然而,当直接从字符串响应加载xml而不是从保存的响应加载xml时,我们得到了“尝试获取非对象的属性”。 当使用simplexml\u load\u字符串而不是simplexml\u load\u文件时,什么会导致xml失败? 以下是xml文件的一个片段:

  • 简单的代码不起作用!我一直在用if语句获取行上非object的属性时出错。我尝试像数组一样访问它,但收到一条消息说它不能以数组的形式访问stdClass。 $group的print\u r、var\u dump和dd可以给出: 使用$setting=$group\u可以- 返回错误不能使用stdClass类型的对象作为数组 laravel错误的详细信息如下: 可处理的例外情况- 编辑我删除了第一部

  • 这是我能言善辩的关系- 当我访问完整对象时- 我得到对象 但当我试图从对象中访问单个属性时- 我有错误 正在尝试获取非对象的属性'Office_Name'

  • 问题内容: 我正在尝试制作更新表单,该表单将为选定的特定ID检索数据,并填写表单,以便其可用于更新。 当我单击特定条目(在我的情况下为Product)上的Edit时,它将带我到,但是对于我在表单元素中使用的每个变量,都显示错误 “试图获取非对象的属性”。 使用,我得到了正确的关联数组,因此正确传递了它。 这是我的摘录。 是包含所有键值对的数组,但由于某种原因我无法填写表格。 先感谢您! 问题答案:

  • 无法显示要查看的数据库信息,出现错误 尝试获取非对象的属性 让我解释一下逻辑: 用户可以创建多个公司 我没有问题插入信息到数据库,一切都很好。我可以在我的显示视图中显示来自用户表和公司表的所有信息,但我不能在我的视图中显示来自Company_Items表的信息。我想我的关系或钥匙出了问题,但是什么?尝试显示属于特定公司的项目名称 公司表: id(int) company_name(字符串) 信息(

  • 我正在尝试解析一个JSON字符串。在解析之前,我将数据放入了JSON格式,但是我得到了一个“试图获取非对象属性”的错误。 下面是我的代码: 我的JSON字符串将如下所示: 有人能帮我找出我做错了什么吗?