0

我正在尝试实时删除记录或自动类似于

据我了解(我是新手),您需要编写一个管理命令,但我很难掌握这个概念,它怎么可能是实时的?有人可以指出我正确的方向吗?我很困扰。先感谢您。

4

1 回答 1

3

您想了解的关于自定义 Django 命令的所有内容都可以在文档中找到:https ://docs.djangoproject.com/en/1.8/howto/custom-management-commands/

基本上,您需要创建一个management/commands目录,因此您的文件夹结构如下所示:

app/
    ... (some stuff you're having in your app directory)
    management/
        __init__.py
        commands/
            __init__.py
            delete_all.py

现在,delete_all.py您要声明一个新的命令类,扩展BaseCommand并负责您的所有逻辑。最简单的实现如下所示:

# delete_all.py
from django.core.management.base import BaseCommand
from app.models import MyModel


class Command(BaseCommand):
    def handle(self, *args, **options):
        print('Deleting all MyModel records!')
        MyModel.objects.all().delete()
        print('Successfully deleted all MyModel records!')

现在您可以使用以下命令访问您的命令manage.py

python manage.py delete_all
于 2015-11-20T17:25:36.097 回答