如何在 Laravel (eloquent) 中删除没有关系的用户?

发布于 2025-01-09 02:10:47 字数 302 浏览 2 评论 0原文

我有一个 Laravel 应用程序,我想删除用户表中的用户记录,但保留与它们相关的数据,例如文章。

我有这个文章功能,

public function userArticles()
    {
        return $this->hasMany('Application\Model\userArticles');
    }

我想删除用户而不从数据库中删除文章,但是当我执行 $user->delete() 时,它会删除所有内容。

有办法保留文章吗?

I have a laravel application and I want to delete the user record form users table but keep the data related to them like articles.

I have this function for article

public function userArticles()
    {
        return $this->hasMany('Application\Model\userArticles');
    }

I want to delete the user without deleting the articles from database, but when I do $user->delete() it deletes everything.

is there a way to keep the articles?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

溺孤伤于心 2025-01-16 02:10:47

更新您的迁移->onDelete('set null')
这意味着当用户被删除时,该字段将为空。

$table-> bigInteger('user_id')->unsigned()->nullable()->index();
$table->foreign('user_id')->references('id')->on('admins')->onDelete('set null');

UPDATE YOUR MIGRATION ->onDelete('set null')
It means when the user was deleted, the field will be null.

$table-> bigInteger('user_id')->unsigned()->nullable()->index();
$table->foreign('user_id')->references('id')->on('admins')->onDelete('set null');
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文