Django 在脚本中执行 class

Django execute class in script

我在 Django 应用程序中执行脚本时遇到问题。此脚本必须用于 crontab 中的作业。所以我将提供我的脚本示例:

规格: Python:3.5.x Django:1.10.5

my_script.py

class SayHello(object):

    def print_args(self, arg1, arg2):
        print (arg1, arg2)

if __name__ == "__main__":
    foo = SayHello()
    foo.print_args(sys.argv[1], sys.argv[2])

但主要问题是当我想在此脚本中包含模型时出现错误:ImportError: No module named "app"

文件夹结构:

say_hello(主文件夹)

-> init.py

-> my_script.py

如何 运行 编写脚本但不从导入语句导入该脚本时出错。任何建议都会很棒。

您的脚本必须位于应用程序的文件夹 management/commands/ 中。

脚本示例:

# -*- coding: utf-8 -*-
# example.py
from django.core.management.base import BaseCommand

class Command(BaseCommand):
    def handle(self, *args, **options):
        print "Hello word!!"

到运行脚本:

./manage.py example

这里有文档https://docs.djangoproject.com/en/1.10/howto/custom-management-commands/