【发布时间】:2021-03-26 11:03:00
【问题描述】:
我有两个模型
Admin Model -> 我用来将 Admins 保存在其中,并在 admin.php 中创建 Guard admin 和他自己的路由
用户模型(在 laravel 中默认)-> 我用来将普通用户保存在其中,并将他自己的路由保存在 web.php 中
评论模型:
$table->id();
$table->string('comment');
$table->boolean('approved')->default(0);
$table->unsignedBigInteger('user_id');
$table->foreign('user_id')->references('id')->on('users')->onDelete('cascade');
$table->unsignedBigInteger('post_id');
$table->foreign('post_id')->references('id')->on('posts')->onDelete('cascade');
当普通用户在帖子上添加评论时,将其保存在来自用户模型的 user_id 问题是:添加评论或回复时我也想成为管理员保存他的ID? 我想知道我是否应该在评论模型上做这样的或者什么解决方案:
$table->unsignedBigInteger('admin_id');
$table->foreign('admin_id')->references('id')->on('admins')->onDelete('cascade');
谢谢你的帮助兄弟。
【问题讨论】:
-
不需要添加单独的列,您可能在用户表中有一个角色,该角色描述了用户类型,无论是用户还是管理员,因此您可以将评论者的 id 与 id 进行比较在用户表中并获取类型