zoukankan      html  css  js  c++  java
  • django-1.11.3 源码详解 -- 0001 django-admin.py 的调用逻辑

    django-admin是django的命令行接口、可以用它来创建工程(startproject) 、创建app(startapp)。它里面又是怎么写的呢?

    一、django-admin.py 的内容

    #!/usr/bin/env python
    from django.core import management
    
    if __name__ == "__main__":
        #django-admin 直接调用的django.core.management.execute_from_command_line() 函数
        management.execute_from_command_line()

      1  上面的代码可以看出啊  这个django-admin是直接调用了django.core.mangement.execute_from_command_line() 函数

    二、django.core.mangement.execute_from_command_line() 函数的内容

    def execute_from_command_line(argv=None):
        """Run a ManagementUtility."""
        #从这里可以看出execute_from_command_line调用的是ManagementUtility类实例的execute方法
        utility = ManagementUtility(argv)
        utility.execute()

      1  由execute_from_command_line可以看出  它只是调用了ManagementUtility类 实例的execute方法;

      所以说要想搞清楚django-admin.py 它是怎么实现的还是要看ManagementUtility这个类的内容才行。

    三、ManagementUtility类的实现

    ----

  • 相关阅读:
    python函数名和左括号之间不能有空格
    linux版本选择
    filter_map
    awk统计总结
    Spring Boot + Redis 实现各种操作
    手机号正则校验
    判断windows系统
    Redis分布式锁
    shell 脚本快速部署 SpringBoot 项目
    Java主流的Http请求--原生的HttpURLConnection
  • 原文地址:https://www.cnblogs.com/JiangLe/p/7008434.html
Copyright © 2011-2022 走看看