在命令中运行视图

时间:2017-06-08 10:42:49

标签: django django-views django-commands

我有一个下载文件的视图。我想创建一个命令,以便能够调用此视图并将文件下载到某个文件夹中。

class DownloadFile(View):
    def get(self, request, pk):
        ...

如何在自定义命令中运行此视图并在本地保存文件?

1 个答案:

答案 0 :(得分:-1)

如果要创建Django Management Command(而不是函数),请在

下创建一个新的python文件

“你的Django-App - >管理 - >命令 - > your_custom_command.py”

然后,创建一个Command类。您可以在此处定义要下载文件的位置。例如:

class Command(BaseCommand):
    media_folder = os.getcwd() + '/media/'
    private_folder = os.getcwd() + '/private/'

def handle(self, *args, **options):
    # insert your code here

您可以从终端执行此命令:

python manage.py your_custom_command

或者您可以从代码中执行它。有关Django文档的更多信息:https://docs.djangoproject.com/en/1.11/ref/django-admin/#running-management-commands-from-your-code

在这里,您可以阅读有关管理命令的更多信息: https://docs.djangoproject.com/en/1.11/howto/custom-management-commands/