Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 在DB laravel 5.4中仅标记输入存储的最后一个值_Jquery_Laravel_Laravel 5.4_Tag It - Fatal编程技术网

Jquery 在DB laravel 5.4中仅标记输入存储的最后一个值

Jquery 在DB laravel 5.4中仅标记输入存储的最后一个值,jquery,laravel,laravel-5.4,tag-it,Jquery,Laravel,Laravel 5.4,Tag It,我正在使用Jquery标记它。当我将标记值传递给控制器并通过var_dump()检查它时;所有的值都非常完美,但问题是当它传递到DB时,它将只存储最后一个值。。请帮帮我 试试这个: $locations = $request->input('wish-tags'); //var_dump($locations); exit(); foreach (explode(",", $locations) as $location) { $wishlist = Wishlist::firstOrN

我正在使用Jquery标记它。当我将标记值传递给控制器并通过var_dump()检查它时;所有的值都非常完美,但问题是当它传递到DB时,它将只存储最后一个值。。请帮帮我

试试这个:

$locations = $request->input('wish-tags');
//var_dump($locations); exit();
foreach (explode(",", $locations) as $location) {
$wishlist = Wishlist::firstOrNew(['user_id' => Auth::user()->id, 'locations' => $location ]);
        if (!empty($wishlist)) {
          $wishlist->update([
            'user_id' => Auth::user()->id,
            'locations' => $location,
          ]);
       }
 }

这是因为foreach循环。但在不了解您使用的数据结构和关系的情况下,如何解决这个问题还不清楚。另外,为了保存标签,通常需要使用多对多关系。好的。。但请解释如何在用户和愿望列表标记之间创建多对多关系?您应该创建一个透视表和两个
belongToMany()
关系。-然后使用
sync()
方法同步标记。