边肖将与您分享姜戈如何编写定制的manage.py命令。希望大家看完这篇文章后有所收获。我们一起讨论一下吧!
我们使用Python manage.pycommand的很多命令,如果要使用一些特定的长命令,比如Python manage.py test-Keepdb-settings=appname . test _ settings(命令功能:运行项目测试时使用指定的配置文件),每次运行都会很麻烦,可以通过设置自定义的manage . py命令来实现。
00-1010
操作步骤要点:
在现有项目中,在要设置的项目app下,添加管理/命令目录,并创建一个新的python模块。模块名称不能以“_”开头,否则模块将不会被设置为自定义命令。将的自定义命令设置为模块的名称,创建的目录树如下:
appname/# django项目下的应用程序
__init__。巴拉圭
模特。py
管理/
命令/
_private.py #此模块不会添加到自定义命令中
Newtest.py #该模块将被设置为自定义命令,命令为模块名称。
测试。py
请注意:添加自定义命令的应用程序需要在设置中注册。00-1010设置newtest.py要实现的功能,newtest.py的内容:
导入操作系统
导入追溯
从django.core.management.base导入BaseCommand,CommandError
类命令(BaseCommand):
def add_arguments(self,parser):
parser.add_argument(
Dest='appname ',#参数名
Type=str,#参数类型
帮助='要测试哪个应用',#帮助信息
)
def句柄(自身,*参数,* *选项):
尝试:
shell _ info=' python manage . py test % s-keepdb-settings=appname . test _ settings ' %(选项['appname'])
os.system(shell_info)
self . stdout . write(self . style . success('命令%s已成功执行,参数为% s'% (_ _ file _ _,选项['appname'])))
除外:
self . stdout . write(trace back . format _ exc())
self . stdout . write(self . style . error('命令执行错误'))以上函数说明:执行python manage.py newtest appname时,将调用测试测试并运行指定的测试特定设置. py配置。
注意:要打印输出信息,请使用:` self.stdout.write('未端接行,ends ' ')',` ends '参数用于指定输出信息的结尾,默认情况下没有参数是换行。看完这篇文章,相信大家对“Django如何编写自定义manage.py命令”有了一定的了解。想了解更多,请关注行业资讯频道,感谢阅读!
内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/107719.html