Php 使用attach()方法Laravel存储值时未知列字段

Php 使用attach()方法Laravel存储值时未知列字段,php,database,laravel,eloquent,Php,Database,Laravel,Eloquent,我想通过使用存储多个复选框值 附加()方法。但问题是: 未找到列:“字段列表”中的1054未知列“类别\u id” (SQL:插入到产品大小(类别id,产品id)值中 (小型,5) 我的表size\u products结构如下(size\u id,product\u id)。但不知道从哪里来的category\u id列 这是我的模型: //Size Model class Size extends Model { public function Produc

我想通过使用存储多个复选框值
附加(
)方法。但问题是:

未找到列:“字段列表”中的1054未知列“类别\u id” (SQL:插入到
产品大小
类别id
产品id
)值中 (小型,5)

我的表
size\u products
结构如下(
size\u id
product\u id
)。但不知道从哪里来的
category\u id

这是我的模型:

   //Size Model


class Size extends Model
    {

        public function Products()
        {
            return $this->belongsToMany(Product::class, 'size_products','product_id','size_id');
        }
    }


/////// Product Model


class Product extends Model
{
    public function Categories()
    {
        return $this->belongsToMany(Category::class, 'category_products');
    }
    public function Colors()
    {
        return $this->belongsToMany(Category::class, 'color_products');
    }
    public function Sizes()
    {
        return $this->belongsToMany(Category::class, 'size_products');
    }
    public function FirstImage(){
        $data = explode(',',$this->images);
        return $data[0];
    }
}
这是我的控制器:

      $product = new Product();
 $product->name= $request->input('name');
 $product->model= $request->input('model');
 $product->save();
            $product->Categories()->attach($request->input('categories_id'));
            foreach ($request->sizes as $size){
                $product->Sizes()->attach($size);
            }
            foreach ($request->colors as $color){
                $product->Colors()->attach($color);
            }
数据库:

Schema::create('size_products', function (Blueprint $table) {
    $table->increments('id');

    $table->integer('product_id')->unsigned();
    $table->foreign('product_id')->references('id')->on('products')->onUpdate('cascade')->onDelete('cascade');

    $table->integer('size_id')->unsigned();
    $table->foreign('size_id')->references('id')->on('sizes')->onUpdate('cascade')->onDelete('cascade');
    $table->timestamps();
});

在产品模型中修复这些关系

public function Sizes()
{
    return $this->belongsToMany(Size::class, 'size_products');
}

public function Colors()
{
    return $this->belongsToMany(Color::class, 'color_products');
}

请给我任何解决办法