如何从 Laravel 的数据库中获取产品 ID

我正在尝试使用隐藏输入从数据库中获取产品 ID,但卡住了;我收到错误General error: 1366 Incorrect integer value: '[{"id":1}]' for column 'product_id'。如何从数据库中获取产品 ID?


刀刃


<input type="hidden" name="id" value="" />

控制器


Image::create(array_merge($formInput,

    [

        $id = $request->input('id'),

        $product_id = Product::find('id'),

        'product_id' => $product_id,


    ])); 

更新


这是我更新的控制器。


Image::create(array_merge($formInput,

[

    $id = $request->input('id'),

    $product = Product::get($id),

    'product_id' =>$product->id,


])); 


繁星点点滴滴
浏览 152回答 2
2回答

慕斯709654

当您使用Model::get('column')样式时,它返回模型对象。不仅是列值。所以你达到这样的列值:Image::create(&nbsp; &nbsp; array_merge(&nbsp; &nbsp; &nbsp; &nbsp; $formInput,&nbsp; &nbsp; &nbsp; &nbsp;[&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;$id=$request->input('id'),&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;$product = Product::get($id),&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;'product_id' => $product->id,&nbsp; &nbsp; &nbsp; &nbsp;]));&nbsp;

茅侃侃

用户$id而不是'id'获取$product对象使用&nbsp;id该产品的用&nbsp;::find(id)所以在你的代码中,改变&nbsp; $id=$request->input('id'),&nbsp; &nbsp; $product_id=Product::get('id'),&nbsp; &nbsp; 'product_id' =>$product_id,到&nbsp; $id=$request->input('id'),&nbsp; &nbsp; $product=Product::find($id), /// I assume id is the PK&nbsp; &nbsp; 'product_id' =>$product->id
打开App,查看更多内容
随时随地看视频慕课网APP