![](/img/trans.png)
[英]How do I save multiple objects to a JSON column in MySQL and Laravel
[英]Laravel: How do I save a JSON object to MYSQL database?
我想使用Laravel API将数据从前端发布到后端的MYSQL数据库。 我尝试了以下代码,但是在尝试发布时输出500: Internal Server Error
。
public function postOrder(Request $request)
{
/*
$request is a JSON Object which looks like
{"order":{"table_id":2,"food_id":4,"status":1}}
*/
$order = new Order();
$order->table_id = $request->order->table_id;
$order->food_id = $request->food_id;
$order->user_id = $request->user_id;
$order->status = $request->status;
$order->save();
return response()->json(['message' => 'Order Added'], 201);
}
我应该json_decode($request)
吗? 怎么样?
当我error_log($request)
,我得到的是:
Accept: */*
Accept-Encoding: gzip, deflate, br
Accept-Language: en-US,en;q=0.8
Connection: keep-alive
Content-Length: 60
Content-Type: application/json
Host: localhost:8000
Origin: http://localhost:8100
Referer: http://localhost:8100/
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML
, like Gecko) Chrome/55.0.2883.87 Safari/537.36
X-Xsrf-Token: eyJpdiI6IlJpNVV1ejhZTDVaSnVcL09lVkFIZER3PT0iLCJ2YWx1ZSI6IjNFK0
NnSXFsczd1eGJBRjZiZFc3U3lBUE9jR1lNZ0hSN0ZWNVpyWHlyWGE1TVZvZW9vK1F0eExXVjdkQzdPS
nBISEM3UXBINGQxZ09jTCttQ0huYmlnPT0iLCJtYWMiOiJmZWNiMTY1NTJjNjYyNDZjM2Q3YTE2N2Jl
NWNmYjgwYmNiMTlkNThjYWQ2NjEyYjk3YzQ4ZTVkYjQwMzFjY2VlIn0=
{"order":{"table_id":2,"food_id":4,"time":"333","status":1}}
您需要使用json_decode()
获得关联数组:
$json = '{"order":{"table_id":2,"food_id":4,"time":"333","status":1}}';
$array = json_decode($json, true);
var_dump($array['order']); //Here you can see that it is an associative array with the needed values now
然后,您可以基于它创建一个模型。
$order = Order::create($array['order']);
那可能是解决方案:
json_decode($request, true)['order']['table_id']
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.