django中创建一个project之后,就会创建一个以项目名称命名的文件中,文件夹中包含了一个同名文件夹和一个manage.py文件。比如:
之后如果要启动服务、同步数据库等操作,都是用python manage.py 开头的,因此manage.py程序显然是服务器操作的入口。
其详细用法可参考官方文档
https://docs.djangoproject.com/en/2.2/ref/django-admin/
其中,开头提到一句话:
In addition, manage.py is automatically created in each Django project. It does the same thing as django-admin but also sets the DJANGO_SETTINGS_MODULE environment variable so that it points to your project’s settings.py file.
意思是manage.py和django-admin的作用一样。
来看一下manage.py文件,包含注释才20行代码
逐行看下去
这里导入os模块,用于接收操作系统的命令,详细用法可参考官方文档
常用的作用比如文件操作、路径操作、读取进程信息等等等等。
导入sys模块,详细用法可参考官方文档
这个模块用来访问由解释器使用或维护的一些变量,以及访问一些与解释器关联密切的函数。
main函数第一步就是加载项目全局设置,这里是唯一一行每个项目不同的代码行。主要是涉及到了项目名称,比如这里的myweb
尝试导入django模块的execute_from_command_line函数,如果导入失败,说明django安装可能有问题。
执行带参数的命令
以上就是一些简单的代码解析,写的比较简略,这里有一篇博文对manage.py的运行过程写的比较详细,做个记录