所以我正在尝试在 Laravel 中建立一个论坛,
到目前为止,我已经完成了所有用户工作。现在我只是想为论坛想一个像样的数据库结构..
我本来想这样走
类别里面有子类别,子类别里面有帖子,帖子里面有评论,所以我打算像这样
论坛类别
$table->engine = 'InnoDB';
$table->increments('id');
$table->integer('user_id')->unsigned();
$table->foreign('user_id')->references('id')->on('users');
$table->integer('parent_id')->unsigned()->nullable();
$table->foreign('parent_id')->references('id')->on('forum_category')->onDelete('cascade');
$table->string('slug')->unique();
$table->string('category_name');
$table->string('category_description');
$table->datetime('locked')->nullable();
$table->datetime('deleted')->nullable();
$table->integer('disabled_by')->unsigned()->nullable();
$table->timestamps();
现在我将使用类别作为主类别,但也使用子类别,现在这没有问题,但是我使用类别名称作为别名,因为我不喜欢 URL 中的 IDS,但这会在我拉动时导致问题子类别信息
我必须查询数据库中哪个类别包含 slug $slug,然后选择 id,然后再查询哪些行具有 id
$cat = ForumCategory::whereSlug($slug)->select('id')->firstOrFail();
$category = ForumCategory::whereNull('deleted')->whereParentId($catId)->get();
这是一种不好的做事方式吗?如果我只是使用 IDS,那么这将是 1 个查询。
最佳答案
https://laravel.com/docs/5.1/eloquent-relationships
我认为你必须使用 Eloquent 关系。浏览文档。
关于php - Laravel 的查询正确吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36672257/