为了从基于Crinsane的购物车创建订单并将其关联到(经过身份验证的)用户,我创建了Order模型,并在订单控制器中尝试了以下操作。
<?php
namespace App\Http\Controllers;
use Cart;
use App\Order;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Facades\Hash;
use App\Http\Controllers\Controller;
class OrderController extends Controller
{
public function __construct()
{
$this->middleware('auth:api');
}
/**
* store cart to authenticated user as order.
*
*/
public function store(Request $request)
{
$order = new Order;
$cartcontent = Cart::content();
$user = auth('api')->user();
$order->user_id= $user->id;
$order->cart_content= $cartcontent;
$order->save();
}
}
但是,它返回cart_content作为空数组[]
。如何将购物车作为订单添加到订单数据库中?
来自docs
Cart :: content()当然,您还希望获得购物车的内容。这个是您将使用content方法的地方。此方法将返回您可以迭代并显示满足客户的需求。
您正在尝试在数据库内部插入一个集合。您需要从current instance of the Crinsane base card
中获取数据,然后将数据插入为json
或任何适合您的需求。