【发布时间】:2020-02-26 21:36:55
【问题描述】:
我正在使用 laravel 5.6 多对多关系在数据库中添加常见问题解答。这是我的迁移:
常见问题类别:(所有常见问题类型的列表)
Schema::create('faq_categories', function (Blueprint $table) {
$table->increments('id');
$table->string('name');
$table->softDeletes();
$table->timestamps();
});
常见问题解答表:
Schema::create('faqs', function (Blueprint $table) {
$table->increments('id');
$table->string('title', 160);
$table->longText('description');
$table->boolean('published')->default(0);
$table->softDeletes();
$table->timestamps();
});
常见问题类型:(特定常见问题的所有常见问题类别)
Schema::create('faq_types', function (Blueprint $table) {
$table->increments('id');
$table->integer('faq_id')->unsigned();
$table->foreign('faq_id')->references('id')->on('faqs')->onDelete('cascade');
$table->integer('faq_category_id')->unsigned();
$table->foreign('faq_category_id')->references('id')->on('faq_categories')->onDelete('cascade');
$table->timestamps();
});
我已经定义了这样的关系:
应用\常见问题类别
class FaqCategory extends Model {
use SoftDeletes;
public function faqs() {
return $this->belongsToMany('App\Faq');
}
}
应用\常见问题解答
class Faq extends Model {
use SoftDeletes;
public function categories() {
return $this->belongsToMany('App\FaqCategory');
}
}
我想要按类别列出的所有常见问题解答。假设faq_categories 表中有General、Other 类别,那么我想要按General、Other 分组的常见问题解答。
但我无法检索按类别分组的所有常见问题解答。我做了以下但面临错误:
$faq = FaqCategory::find(1);
return $faq->faqs;
dd($faq);
错误:
SQLSTATE[42S02]:未找到基表或视图:1146 表 'db_name.faq_faq_category' 不存在。
谁能建议我如何处理这种情况或处理这种情况的最佳方法?
【问题讨论】:
-
您在模型中声明表名的位置,例如 protected $table = tbl_ads';
-
不,我没有在模型中定义