/** * Update the specified resource in storage. * PUT /warehouses/{id} * * @param int $id * @return Response */ public function update($id, Request $request) { $warehouse = Warehouse::findOrFail($id); $address = $warehouse->address; $this->validate($request, Address::related_rules()); // http://stackoverflow.com/questions/17950118/laravel-eloquent-how-to-update-a-model-and-related-models-in-one-go $warehouse->update(array_merge($request->all(), ['alias' => $request->input('address.alias')])); $request->merge($request->input('address')); $request->merge(['notes' => '']); $address->update($request->except(['address'])); return redirect('warehouses')->with('info', l('This record has been successfully updated :: (:id) ', ['id' => $id], 'layouts') . $request->get('name_commercial')); }