Mar 12, 2017
0
Level 6
Update model data from form array
Hello,
Having a little trouble identifying how I can update a table with the order field from a form array.
The data I'm sending to the controller:
[
{
"id": 18,
"photo_url": "https://s3-eu-west-1.amazonaws.com/site-v1/profiles/b0dd28fe4a56cba2c04d41fa7c35a8f9.jpeg",
"order": 0,
"created_at": "2017-03-11 13:03:39",
"updated_at": "2017-03-11 13:03:39",
"pivot": {
"listings_id": "1",
"asset_id": "18"
}
},
{
"id": 19,
"photo_url": "https://s3-eu-west-1.amazonaws.com/site-v1/profiles/9354f40258df692fbcfbf29609ca8d50.jpeg",
"order": 1,
"created_at": "2017-03-11 13:03:47",
"updated_at": "2017-03-11 13:03:47",
"pivot": {
"listings_id": "1",
"asset_id": "19"
}
},
{
"id": 20,
"photo_url": "https://s3-eu-west-1.amazonaws.com/site-v1/profiles/be51ea2c4e26ca6a804190bf2cc81477.jpeg",
"order": 2,
"created_at": "2017-03-11 13:28:05",
"updated_at": "2017-03-11 13:28:05",
"pivot": {
"listings_id": "1",
"asset_id": "20"
}
},
{
"id": 21,
"photo_url": "https://s3-eu-west-1.amazonaws.com/site-v1/profiles/2495fed3bfafbc42280d1400644f641f.jpeg",
"order": 3,
"created_at": "2017-03-11 13:28:37",
"updated_at": "2017-03-11 13:28:37",
"pivot": {
"listings_id": "1",
"asset_id": "21"
}
},
{
"id": 24,
"photo_url": "https://s3-eu-west-1.amazonaws.com/site-v1/profiles/de41d9ebd7aaf37a943b0e94f7660b6a.jpeg",
"order": 4,
"created_at": "2017-03-11 14:33:55",
"updated_at": "2017-03-11 14:33:55",
"pivot": {
"listings_id": "1",
"asset_id": "24"
}
}
]
The Controller:
/**
* Update the assets order.
*
* @param Request $request
* @return Response
*/
public function save(Request $request)
{
$results = $request->all();
foreach($results as $result => $value) {
$asset = Asset::findOrFail($value);
$asset->order = $request->order;
$asset->save();
};
}
The error:
in Builder.php line 206
at HandleExceptions->handleError('8', 'Array to string conversion', '/Users/ben/code/app/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php', '206', array('id' => array(array('id' => '18', 'photo_url' => 'https://s3-eu-west-1.amazonaws.com/site-v1/profiles/b0dd28fe4a56cba2c04d41fa7c35a8f9.jpeg', 'order' => '0', 'created_at' => '2017-03-11 13:03:39', 'updated_at' => '2017-03-11 13:03:39', 'pivot' => array('listings_id' => '1', 'asset_id' => '18')), array('id' => '19', 'photo_url' => 'https://s3-eu-west-1.amazonaws.com/site-v1/profiles/9354f40258df692fbcfbf29609ca8d50.jpeg', 'order' => '1', 'created_at' => '2017-03-11 13:03:47', 'updated_at' => '2017-03-11 13:03:47', 'pivot' => array('listings_id' => '1', 'asset_id' => '19')), array('id' => '20', 'photo_url' => 'https://s3-eu-west-1.amazonaws.com/site-v1/profiles/be51ea2c4e26ca6a804190bf2cc81477.jpeg', 'order' => '2', 'created_at' => '2017-03-11 13:28:05', 'updated_at' => '2017-03-11 13:28:05', 'pivot' => array('listings_id' => '1', 'asset_id' => '20')), array('id' => '21', 'photo_url' => 'https://s3-eu-west-1.amazonaws.com/site-v1/profiles/2495fed3bfafbc42280d1400644f641f.jpeg', 'order' => '3', 'created_at' => '2017-03-11 13:28:37', 'updated_at' => '2017-03-11 13:28:37', 'pivot' => array('listings_id' => '1', 'asset_id' => '21')), array('id' => '24', 'photo_url' => 'https://s3-eu-west-1.amazonaws.com/site-v1/profiles/de41d9ebd7aaf37a943b0e94f7660b6a.jpeg', 'order' => '4', 'created_at' => '2017-03-11 14:33:55', 'updated_at' => '2017-03-11 14:33:55', 'pivot' => array('listings_id' => '1', 'asset_id' => '24'))), 'columns' => array('*'), 'result' => object(Collection)))
at array_unique(array(array('id' => '18', 'photo_url' => 'https://s3-eu-west-1.amazonaws.com/site-v1/profiles/b0dd28fe4a56cba2c04d41fa7c35a8f9.jpeg', 'order' => '0', 'created_at' => '2017-03-11 13:03:39', 'updated_at' => '2017-03-11 13:03:39', 'pivot' => array('listings_id' => '1', 'asset_id' => '18')), array('id' => '19', 'photo_url' => 'https://s3-eu-west-1.amazonaws.com/site-v1/profiles/9354f40258df692fbcfbf29609ca8d50.jpeg', 'order' => '1', 'created_at' => '2017-03-11 13:03:47', 'updated_at' => '2017-03-11 13:03:47', 'pivot' => array('listings_id' => '1', 'asset_id' => '19')), array('id' => '20', 'photo_url' => 'https://s3-eu-west-1.amazonaws.com/site-v1/profiles/be51ea2c4e26ca6a804190bf2cc81477.jpeg', 'order' => '2', 'created_at' => '2017-03-11 13:28:05', 'updated_at' => '2017-03-11 13:28:05', 'pivot' => array('listings_id' => '1', 'asset_id' => '20')), array('id' => '21', 'photo_url' => 'https://s3-eu-west-1.amazonaws.com/site-v1/profiles/2495fed3bfafbc42280d1400644f641f.jpeg', 'order' => '3', 'created_at' => '2017-03-11 13:28:37', 'updated_at' => '2017-03-11 13:28:37', 'pivot' => array('listings_id' => '1', 'asset_id' => '21')), array('id' => '24', 'photo_url' => 'https://s3-eu-west-1.amazonaws.com/site-v1/profiles/de41d9ebd7aaf37a943b0e94f7660b6a.jpeg', 'order' => '4', 'created_at' => '2017-03-11 14:33:55', 'updated_at' => '2017-03-11 14:33:55', 'pivot' => array('listings_id' => '1', 'asset_id' => '24')))) in Builder.php line 206
at Builder->findOrFail(array(array('id' => '18', 'photo_url' => 'https://s3-eu-west-1.amazonaws.com/site-v1/profiles/b0dd28fe4a56cba2c04d41fa7c35a8f9.jpeg', 'order' => '0', 'created_at' => '2017-03-11 13:03:39', 'updated_at' => '2017-03-11 13:03:39', 'pivot' => array('listings_id' => '1', 'asset_id' => '18')), array('id' => '19', 'photo_url' => 'https://s3-eu-west-1.amazonaws.com/site-v1/profiles/9354f40258df692fbcfbf29609ca8d50.jpeg', 'order' => '1', 'created_at' => '2017-03-11 13:03:47', 'updated_at' => '2017-03-11 13:03:47', 'pivot' => array('listings_id' => '1', 'asset_id' => '19')), array('id' => '20', 'photo_url' => 'https://s3-eu-west-1.amazonaws.com/site-v1/profiles/be51ea2c4e26ca6a804190bf2cc81477.jpeg', 'order' => '2', 'created_at' => '2017-03-11 13:28:05', 'updated_at' => '2017-03-11 13:28:05', 'pivot' => array('listings_id' => '1', 'asset_id' => '20')), array('id' => '21', 'photo_url' => 'https://s3-eu-west-1.amazonaws.com/site-v1/profiles/2495fed3bfafbc42280d1400644f641f.jpeg', 'order' => '3', 'created_at' => '2017-03-11 13:28:37', 'updated_at' => '2017-03-11 13:28:37', 'pivot' => array('listings_id' => '1', 'asset_id' => '21')), array('id' => '24', 'photo_url' => 'https://s3-eu-west-1.amazonaws.com/site-v1/profiles/de41d9ebd7aaf37a943b0e94f7660b6a.jpeg', 'order' => '4', 'created_at' => '2017-03-11 14:33:55', 'updated_at' => '2017-03-11 14:33:55', 'pivot' => array('listings_id' => '1', 'asset_id' => '24')))) in Model.php line 3561
at Model->__call('findOrFail', array(array(array('id' => '18', 'photo_url' => 'https://s3-eu-west-1.amazonaws.com/site-v1/profiles/b0dd28fe4a56cba2c04d41fa7c35a8f9.jpeg', 'order' => '0', 'created_at' => '2017-03-11 13:03:39', 'updated_at' => '2017-03-11 13:03:39', 'pivot' => array('listings_id' => '1', 'asset_id' => '18')), array('id' => '19', 'photo_url' => 'https://s3-eu-west-1.amazonaws.com/site-v1/profiles/9354f40258df692fbcfbf29609ca8d50.jpeg', 'order' => '1', 'created_at' => '2017-03-11 13:03:47', 'updated_at' => '2017-03-11 13:03:47', 'pivot' => array('listings_id' => '1', 'asset_id' => '19')), array('id' => '20', 'photo_url' => 'https://s3-eu-west-1.amazonaws.com/site-v1/profiles/be51ea2c4e26ca6a804190bf2cc81477.jpeg', 'order' => '2', 'created_at' => '2017-03-11 13:28:05', 'updated_at' => '2017-03-11 13:28:05', 'pivot' => array('listings_id' => '1', 'asset_id' => '20')), array('id' => '21', 'photo_url' => 'https://s3-eu-west-1.amazonaws.com/site-v1/profiles/2495fed3bfafbc42280d1400644f641f.jpeg', 'order' => '3', 'created_at' => '2017-03-11 13:28:37', 'updated_at' => '2017-03-11 13:28:37', 'pivot' => array('listings_id' => '1', 'asset_id' => '21')), array('id' => '24', 'photo_url' => 'https://s3-eu-west-1.amazonaws.com/site-v1/profiles/de41d9ebd7aaf37a943b0e94f7660b6a.jpeg', 'order' => '4', 'created_at' => '2017-03-11 14:33:55', 'updated_at' => '2017-03-11 14:33:55', 'pivot' => array('listings_id' => '1', 'asset_id' => '24'))))) in Model.php line 3573
at Model::__callStatic('findOrFail', array(array(array('id' => '18', 'photo_url' => 'https://s3-eu-west-1.amazonaws.com/site-v1/profiles/b0dd28fe4a56cba2c04d41fa7c35a8f9.jpeg', 'order' => '0', 'created_at' => '2017-03-11 13:03:39', 'updated_at' => '2017-03-11 13:03:39', 'pivot' => array('listings_id' => '1', 'asset_id' => '18')), array('id' => '19', 'photo_url' => 'https://s3-eu-west-1.amazonaws.com/site-v1/profiles/9354f40258df692fbcfbf29609ca8d50.jpeg', 'order' => '1', 'created_at' => '2017-03-11 13:03:47', 'updated_at' => '2017-03-11 13:03:47', 'pivot' => array('listings_id' => '1', 'asset_id' => '19')), array('id' => '20', 'photo_url' => 'https://s3-eu-west-1.amazonaws.com/site-v1/profiles/be51ea2c4e26ca6a804190bf2cc81477.jpeg', 'order' => '2', 'created_at' => '2017-03-11 13:28:05', 'updated_at' => '2017-03-11 13:28:05', 'pivot' => array('listings_id' => '1', 'asset_id' => '20')), array('id' => '21', 'photo_url' => 'https://s3-eu-west-1.amazonaws.com/site-v1/profiles/2495fed3bfafbc42280d1400644f641f.jpeg', 'order' => '3', 'created_at' => '2017-03-11 13:28:37', 'updated_at' => '2017-03-11 13:28:37', 'pivot' => array('listings_id' => '1', 'asset_id' => '21')), array('id' => '24', 'photo_url' => 'https://s3-eu-west-1.amazonaws.com/site-v1/profiles/de41d9ebd7aaf37a943b0e94f7660b6a.jpeg', 'order' => '4', 'created_at' => '2017-03-11 14:33:55', 'updated_at' => '2017-03-11 14:33:55', 'pivot' => array('listings_id' => '1', 'asset_id' => '24'))))) in ListingsController.php line 363
at ListingsController->save(object(Request))
at call_user_func_array(array(object(ListingsController), 'save'), array(object(Request))) in Controller.php line 55
at Controller->callAction('save', array(object(Request))) in ControllerDispatcher.php line 44
at ControllerDispatcher->dispatch(object(Route), object(ListingsController), 'save') in Route.php line 189
at Route->runController() in Route.php line 144
at Route->run(object(Request)) in Router.php line 653
at Router->Illuminate\Routing\{closure}(object(Request)) in Pipeline.php line 53
at Pipeline->Illuminate\Routing\{closure}(object(Request)) in SubstituteBindings.php line 41
at SubstituteBindings->handle(object(Request), object(Closure)) in Pipeline.php line 137
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in Pipeline.php line 33
at Pipeline->Illuminate\Routing\{closure}(object(Request)) in ThrottleRequests.php line 49
at ThrottleRequests->handle(object(Request), object(Closure), '60', '1') in Pipeline.php line 137
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in Pipeline.php line 33
at Pipeline->Illuminate\Routing\{closure}(object(Request)) in Pipeline.php line 104
at Pipeline->then(object(Closure)) in Router.php line 655
at Router->runRouteWithinStack(object(Route), object(Request)) in Router.php line 629
at Router->dispatchToRoute(object(Request)) in Router.php line 607
at Router->dispatch(object(Request)) in Kernel.php line 268
at Kernel->Illuminate\Foundation\Http\{closure}(object(Request)) in Pipeline.php line 53
at Pipeline->Illuminate\Routing\{closure}(object(Request)) in CheckForMaintenanceMode.php line 46
at CheckForMaintenanceMode->handle(object(Request), object(Closure)) in Pipeline.php line 137
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in Pipeline.php line 33
at Pipeline->Illuminate\Routing\{closure}(object(Request)) in Pipeline.php line 104
at Pipeline->then(object(Closure)) in Kernel.php line 150
at Kernel->sendRequestThroughRouter(object(Request)) in Kernel.php line 117
at Kernel->handle(object(Request)) in index.php line 53
at require('/Users/ben/code/app/public/index.php') in server.php line 106
Please or to participate in this conversation.