来自Ruby on Rails体验,您可以在其中加载rails控制台以删除用户或所有用户。我是Laravel 5的新手,我正在寻找类似于删除sqlite3数据库中已有用户的东西。
我看到人们在谈论User::find(1)->delete();
删除用户的位置,但在哪里放置并运行?是否有控制台来执行删除任务?我想知道如何在不删除表的情况下删除用户。我不想软删除。
答案 0 :(得分:30)
您可以将此代码放在控制器中。
您可以使用
$user = User::find($id);
$user->delete();
如果您不使用SoftDeletingTrait
特质或
$user = User::find($id);
$user->forceDelete();
如果你这样做,并且你想真正从数据库中删除用户,那么不要只是将其从结果中隐藏起来。
您可以在Laravel page
阅读更多内容答案 1 :(得分:7)
在Laravel 5中你可以使用destroy方法。
$user->destroy($id);
并且,当然,您有一个命令行可以这样做。
$ php artisan tinker
你可以运行例如
>> $var = new App\User;
>> $user= $user->find($id);
>> $user->destroy();
答案 2 :(得分:5)
有几种方法可以做到这一点。
如果您的控制器将用户定义为参数:
public function destroy(User $user)
{
return $user->delete();
}
您还可以按$ id删除任何用户:
User::destroy ($id);
假设您正在以一定的安全性包装这些路线。
编辑:更正拼写
答案 3 :(得分:3)
您可以使用以下示例删除多个数据 参数......
>
> tableName::where('field_1','=',$para1)
> ->where('field_2,'=',$para2)
> ->delete();
答案 4 :(得分:0)
这仍然适用于laravel 7 ,我使用 tinker 命令行和delete()方法:
php artisan tinker
现在我可以直接运行命令了:
> App\User::find($id)->delete();