zoukankan      html  css  js  c++  java
  • 初始Django

      Django是Python众多web架构中重量级的开源web架构,是由python编写而成。

      Django采用的是MTV架构模式,(M:模型;T:模板;V:视图)

        模型(model):数据存取层,处理与数据相关的所有事物;

        模板(Template):表现层,处理与表现相关的决定;如何在页面或其他类型文档中进行显示。

        视图(view):业务逻辑层,存取模型及调取恰当模板的相关逻辑。模型与模板的桥梁。

    什么是web框架:

      web框架其实就是建立web应用的一种方式。其本质其实就是一个socket服务端,用户的浏览器就是这个socket的客户端。

      简单搞个web架构:

     1 # @Time : 2019/12/2 10:49 
     2 # @Author : Adair
     3 
     4 import socket
     5 
     6 def handle_request(client):
     7     buf = client.recv(1024)
     8     client.send("HTTP/1.1 200 OK
    
    ".encode("utf8"))
     9     client.send("<h1 style='color:red'>Hello Adair</h1>".encode("utf8"))
    10 
    11 def main():
    12     sock=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
    13     sock.bind(('localhost',8080))
    14     sock.listen(3)
    15 
    16     while True:
    17         connection,address = sock.accept()
    18         handle_request(connection)
    19         connection.close()
    20 
    21 if __name__ == '__main__':
    22     main()

     Django命令行工具:

      django-admin.py 是Django的一个用于管理任务的命令行工具,manage.py是对django-admin.py的简单封装,每一个Django project里都会有一个manage.py

           1、创建一个Django工程:django-admin.py startproject XXX

      2、创建APP应用:python manage.py startapp XXX

      3、启动Django项目:python manage.py runserver IP:PORT

      4、生成同步数据库的脚本:python manage.py makemigrations

      5、同步数据库:python manage.py migrate

         注意:在开发过程中,数据库同步误操作之后,难免会遇到后面不能同步成功的情况,解决这个问题的简单粗暴的方法是吧migrations目录下的脚本(除__init__.py之外)全部删掉,再把数据库删掉之后创建一个新的数据库,数据库同步操作再重新做一遍。

      6、创建登录后台页面的超级管理员的用户和密码:python  manage.py createsuperuser

      7、清空数据库:python manage.py flush

      8、查询某个命令的详细信息:django-admin.py help startapp

      9、启动交互界面:python manage.py shell

      10、在终端上输入python manage.py 可以看到详细的列表,在忘记子名称的时候特别有用

    Django目录介绍:

     最上边的mytest为整个工程的名称:

    •   APP为项目的名称(可以根据功能划分创建多个项目)
    •   mytest为整个工程的配置目录,可以理解为全局配置文件
    •   templates目录为存放web文件的目录,可以自行在此目录下创建目录进行web文本的区分
    •   manage.py为Django管理任务的命令行工具

    mytest(全局配置文件的存在目录):

    •   settings:所有的Django的配置信息都在这里边,包括数据库的配置,静态文件的配置,还有Django依赖的第三方扩展包
    •   urls:路由分配器,负责把URL模式映射到应用程序上
    •   wsgi:web服务器网关接口

     APP(单个项目的名称):

    •   migrations:数据库修改表结构的记录
    •   admin:Django为我们提供的后台管理
    •   apps:配置当前项目
    •   models:ORM 写指定的类,通过命令可以创建数据库表结构
    •   tests:单元测试
    •   views:业务逻辑代码,正在写代码的地方
  • 相关阅读:
    101. Symmetric Tree(js)
    100. Same Tree(js)
    99. Recover Binary Search Tree(js)
    98. Validate Binary Search Tree(js)
    97. Interleaving String(js)
    96. Unique Binary Search Trees(js)
    95. Unique Binary Search Trees II(js)
    94. Binary Tree Inorder Traversal(js)
    93. Restore IP Addresses(js)
    92. Reverse Linked List II(js)
  • 原文地址:https://www.cnblogs.com/Adairye/p/11979934.html
Copyright © 2011-2022 走看看