填充查找表


Populating a lookup table

我建立了一个网站来出售我的摄影作品。照片按类别分类,有多种尺寸,所以我有一个照片、类别和尺寸表,由一个category_photo和photo_size表连接。

到目前为止,我一直在使用PHPMyAdmin向网站添加新照片,但手动更新三个表有点痛苦,所以我正在构建一个小后端,使其更快。我可以很容易地将一张新照片添加到photos表中,但是当涉及到填充查找表的类别和大小时,我遇到了表名的问题。

下面是填充category_photo表的代码:
foreach($request->category as $category)
  {
    $catphoto = new Category_Photo(['photo_id' => $photo->id, 'category_id' => $category]);
    $photo->categories()->save($catphoto);
  }

然而,当我运行这个时,我得到了错误:

SQLSTATE[42S02]: Base table or view not found: 1146 Table 'db.category__photos' doesn't exist (SQL: insert into `category__photos` (`photo_id`, `category_id`) values (50, 1))

查找名为category_photos而不是category_photo的表。我怎样才能纠正这个问题?或者有没有更好的方法来实现我想要做的事情?

在你的Category_Photo模型类添加protected $table = 'category_photo';因为默认情况下laravel使用复数版本的模型表