Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何将产品图像存储在Laravel中的单独表格中_Php_Laravel_Laravel 7 - Fatal编程技术网

Php 如何将产品图像存储在Laravel中的单独表格中

Php 如何将产品图像存储在Laravel中的单独表格中,php,laravel,laravel-7,Php,Laravel,Laravel 7,我正在尝试在数据库中存储多个图像。我有产品表,图片表 在images表中,我有一个名为“product_id”的外键 我已成功存储产品数据,但没有图像 如何在存储此产品的同时存储具有产品标识的图像 这是密码 控制器 public function Store(Request $request) { try { $formInput=$request->all(); product::create(array_merg

我正在尝试在数据库中存储多个图像。我有产品表,图片表 在images表中,我有一个名为“product_id”的外键 我已成功存储产品数据,但没有图像 如何在存储此产品的同时存储具有产品标识的图像

这是密码

控制器

 public function Store(Request $request)
    {
        try {
            $formInput=$request->all();
            product::create(array_merge($formInput,
            [
            'name' => $request->name,
            'description' => $request->description,
            'price' => $request->price,
            'status' => $request->status,
            'category_id'  => $request->category_id,
            ],
    ));
            toastr()->success('Data Has been saved successfully ' , 'SUCCESS ');
            return redirect()->back();

        } catch (\Exception $ex) {
            toastr()->success('An error has occurred ' , 'ERROR');
            return redirect()->back()->withInput();
            //return $ex ;
        }
    }
产品模型

    public function images(){
        return $this->hasMany(Image::class);    
    }
图像模型

    public function product(){
        return $this->belongsTo(Product::class);
    }
刀片“单柱”


但是在product_id中,我如何用product_id替换11???

请更新您的问题,说明您的数据是如何从ui传递的-是单个POST还是AJAX还是多个AJAX保存产品后,您可以使用InsertGetId()方法返回产品id。使用此ID,您可以将数据保存在images表中。
$product->images()->saveMany(ImageObject)试试这个。
<div class="col-12">
    <div class="custom-file">
        <input type="file" name="images[]" multiple class="custom-file-input">
        <label class="custom-file-label" for="inputGroupFile01">Choose file</label>
    </div>
</div>
$images=array();
            if($files=$request->file('images')){
                foreach($files as $file){
                    $name=$file->hashName();
                    $file->move('images',$name);
                    $images[]=$name;
                    Image::create(array_merge($formInput,
                    [
                        'product_id' => 11,
                        'url' => ($name),
                        ],
                    ));
                }
            }