有啥地方可以确定表 order_product 表的名称
Posted
技术标签:
【中文标题】有啥地方可以确定表 order_product 表的名称【英文标题】:Is there any where to determine name of table order_product table有什么地方可以确定表 order_product 表的名称 【发布时间】:2020-01-07 19:44:58 【问题描述】:我正在尝试使用 laravel 创建和编辑订单,但是当我调用 create 函数时出现错误(未找到基表或视图:1146 Table 'easyres.order_products),然后如果我将表名更改为 order_products 我有同样的错误,但有(order_product)
订购产品型号:
protected $fillable = [
'count' , 'price'
];
订购型号:
public function products()
return $this->belongsToMany('App\Product')->withPivot('count')->withPivot('price');
产品型号:
public function order()
return $this->belongsToMany('App\Order');
创建函数:
public function createOrder(Request $request)
$order = new Order;
$order->status = $request->status;
$order->user_id = auth()->user()->id;
$order->save();
$product_ids = $request->products;
foreach ($product_ids as $index => $productId)
$id = $productId['product_id'];
$count = $productId['count'];
$product = Product ::find($id);
$orderProduct = new Orderproduct;
$orderProduct->product_id = $id;
$orderProduct->order_id = $order->id;
$orderProduct->count = $count;
$orderProduct->price = $product->product_price;
$orderProduct->save();
return response()->json([
'message' => 'Success'
],200);
编辑功能:
public function EditOrder(Request $request , $id)
$order = Order::find($id);
$order->status = $request->status;
$order->user_id = $request->user_id;
$order->update();
$product_ids = $request->products;
$selectedItems = [];
foreach ( $product_ids as $key => $productId)
$id1 = $productId['product_id'];
$product = Product ::find($id);
$count = $productId['count'];
$selectedItems[$id1] = ['product_id' => $productId['product_id'] , 'count' => $productId['count'] , 'price' => $product->product_price];
$order->products()->updateExistingPivot($id1, $selectedItems[$id1]);
return response()->json([
'message' => 'Success'
],200);
我想确定 order_product 表的名称
【问题讨论】:
不清楚你在问什么 请阅读How to create a Minimal, Reproducible Example,以便有人能够理解您的要求。另请查看How do I ask a good question? 以提高您获得答案的机会。那么,请更新您的问题。 另外,你的表迁移会很有帮助,所以发布它 【参考方案1】:在您的 OrderProduct
模型中,将表名设置为属性
protected $table = "order_product";
因为 Eloquent 采用复数形式作为表名
【讨论】:
以上是关于有啥地方可以确定表 order_product 表的名称的主要内容,如果未能解决你的问题,请参考以下文章
用pl sql为oracle表创建sequence有啥用 怎么创建?