【问题标题】:I am trying to add or update multiple records i am facing error我正在尝试添加或更新多条记录,但我遇到了错误
【发布时间】:2020-07-23 11:40:17
【问题描述】:

我正在尝试添加或更新多条记录,但遇到错误我该怎么做,请帮助我,谢谢。

请检查错误https://flareapp.io/share/q5Yj1VmX#F1

方法 App\Issue::__toString() 不得抛出异常,捕获 Illuminate\Database\Eloquent\JsonEncodingException:错误将 ID 为 [819] 的模型 [App\Issue] 编码为 JSON:检测到递归

控制器

 public function issuesUpdate(Request $request, Project $project)
   {
     Issue::WhereNotIn('issue', $request->issue)->delete(); 

    $issues =Issue::where('project_id',$project->id)->get();            
        //for update record 
    foreach($issues as  $key => $value){
        $value->date         =  $request->date[$key];
        $value->issue        =  $value;
        $value->project_id   =  $project->id;
        $value->save();
    }
        //for add new record 
        foreach($request->date  as  $key2 => $val){
            $issue               =  new Issue;
            $issue->date         =  $val;
            $issue->issue        =  $request->issue[$key2];
            $issue->project_id   =  $project->id;
            $issue->save();
        }
         return redirect()->route('project');
}

回复回复

{
  "_token": "r3CTg9PnUyWo8inwpmWdncV1NcQp18FCyvMI7l3B",
  "date": [
    "2020-08-06",
    "2020-07-09"
  ],
  "issue": [
    "gfhfghgfhdfgdfgdfgfd",
    "dsfsdfds"
  ]
}

【问题讨论】:

    标签: laravel


    【解决方案1】:

    你可以像这样更新数据

    $issues =Issue::where('project_id',$project->id)->update(array(
    'date'=>$request->date,
    'issue'=>$request->issue
      ...Other Code...
     ));
    

    【讨论】:

    • 我正在尝试更新我的记录我正面临这个错误flareapp.io/share/lm2YQL5x#F59
    • 请查看顶部的返回响应
    • Invalid datetime format: 1292 Incorrect date value: '["2020-08-06"]' 出现错误是因为date 列的日期格式不正确
    【解决方案2】:

    在下面的代码中,$issues 是问题模型实例的集合,您正在分配 $value->issue a model instance

    您不能将模型实例分配给属性。

    如果您能在此处分享问题模型代码以及issue 表的字段,那就太好了。

    $issues = Issue::where('project_id',$project->id)->get();
    foreach($issues as  $key => $value){
            $value->date         =  $request->date[$key];
            $value->issue        =  $value;
            $value->project_id   =  $project->id;
            $value->save();
        }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-06-11
      • 1970-01-01
      • 2019-10-04
      • 2021-11-04
      • 2021-04-22
      • 2019-04-26
      • 2021-11-24
      • 1970-01-01
      相关资源
      最近更新 更多