django源码分析-bin分析


bin不是一个模块,而是一个目录,下面有一个重要的文件是django-admin.py,该文件就是你在创建django项目时,在命令行运行的文件,它会执行各种命令。

django-admin.py内容

#!/usr/bin/env python
from django.core import management

if __name__ == "__main__":
    management.execute_from_command_line()

运行该文件会调用django.core模块下面的management模块里面的execute_from_command_line()函数来执行命令:

management.pyexecute_from_command_line()内容如下:

def execute_from_command_line(argv=None):
    """Run a ManagementUtility."""
    utility = ManagementUtility(argv)
    utility.execute()

该模块下面有一个commands文件夹,下面有常用的各种命令,例如:startproject.pystartapp.pymigrate.pymakemigrations.py等等。

更多Django教程

学习更多Django教程