zoukankan      html  css  js  c++  java
  • 【Django入门】学习笔记01

    Django介绍###

    • Django是一个基于Python的高级Web开发框架
    • 它能够让开发人员进行高效且快速的开发
    • 高度集成,方便开发

    正常上网流程###

    打开浏览器->向目标URL发送一个HTTP请求->服务器把页面响应给浏览器

    浏览网页的基本原理###

    本质是网络通信,即通过网络进行数据传递
    浏览器经过通信后获取到该页面的源代码文档
    浏览器解析文档后以适当的形式展示给用户

    网络响应流程

    编辑器推荐####

    • Pycharm
    • Sublime Text,Atom

    Django项目开发

    创建项目

    • 打开命令行,进入想要安置项目的目录
    • 命令行输入
    django-admin startproject YourProjectName
    

    项目目录结构

    项目目录结构
    查看可用命令(在manage.py当前目录下执行)

    python manage.py
    

    目录(这里为myblog目录)

    • 项目的一个容器
    • 包含项目最基本的一些配置
    • 目录名称不建议修改

    项目目录介绍###

    wsgi.py

    • WSGI(Web Server Gateway Interface)
    • Python服务器网关接口
      urls.py
      -url配置文件
      settings.py
    • 项目总配置文件
    • 包含数据库、Web应用、时间等各自配置
      init_.py
    • Python中声明模块的文件
    • 内容默认为空

    创建应用###

    • 打开命令行,进入项目中manage.py同级目录
    • 命令行输入
    python manage.py startapp YourAppName
    
    • 添加应用名到setting.py中的INSTALLED_APPS
      注意:应用名不能与已有名称重复,否则会报错

    migrations

    • 数据移植(迁移)模块
    • 内容自动生成不需要管它

    admin.py

    • 该应用的后台管理系统配置

    apps.py

    • 应用的配置文件

    models.py

    • 数据模块
    • 使用ORM框架

    tests.py

    • 测试脚本

    views.py

    • 执行响应代码所在模块
    • 代码逻辑处理的主要地点
    • 主要写代码的地方

    创建页面####

    编辑blog.views

    • 每个响应对应一个参数,函数必须返回一个响应
    • 函数必须存在一个参数,一般约定为request
    • 每个响应(函数)对应一个URL

    配置URL####

    编辑urls.py

    • 每个URL都以url形式写出
    • url函数放在urlpatterns列表中
    • url函数的参数根据提示写,一般常用为三个:URL、对应方法、名称
      包含其他URL
    • 在根urls.py中引入include
    • app目录下创建urls.py文件,根式与根urls.py相同
    • 根urls.py中url函数第二个参数改为include(YourAppName.urls')

    配置Templates####

    Templates介绍#####
    • 一种HTML文件
    • 使用了Django模板语言(DTL)
    • 可以使用第三方模板(修改setting.py中TEMPLATE选项的BACKEND)
    配置过程#####
    • 在APP目录下创建Templates目录
    • 在该目录下创建HTML文件
    • 在views.py中返回render()
    DTL的使用#####
    • render()函数中支持一个dict类型参数
    • 该字典是后台传递到模板的参数,键为参数名
    • 在模板中使用{{参数名}}来直接使用

    注意:
    Django是按照INSTALLED_APPS中添加顺序查找Templates
    因此不同APP下Templates目录中的同名html文件会造成冲突。

    所以需要在APP的Templates目录下创建以APP名为名称的目录
    将html文件放入新创建的目录下面

    Models###

    Models介绍####

    • 一个Model对应数据库的一张数据表
    • Django中Models以类的形式表现,包含一些基本字段和数据的一些行为
    ORM(对象关系映射)#####
    • 实现了对象和数据库之间的映射
    • 隐藏了数据访问的细节,不需要编写SQL语句
    步骤#####
    • 在应用根目录下创建models.py,并引入models模块
    • 创建类,继承models.Model,即类是一张数据表
    • 在类中创建字段
    字段创建#####
    • 字段即类里面的属性(变量)
    attr = models.CharField(max_length=64)
    
    生成数据表#####
    • 在命令行中执行命令
    python manage.py makemigrations YourAppName(可选)
    
    • 再次执行
    python manage.py migrate
    
    查看移植内容#####
    • app/migrations/ 下会有移植文件
    • 查看sql语句,执行
    python manage.py sqlmigrate YourAppName FileId
    
    • 查看并编辑bd.sqlite3
      可以使用第三方软件 SQLite Expert Personal

    页面呈现数据####

    • views.py中 from . import models
    • 输入
    value = models.Article.objects.get(pk=1)
    return render(request,page,{'article':value})
    
    • 在html文档可以直接使用对象以及对象的“.”操作
    article.title
    

    (未完待续)

  • 相关阅读:
    今天更新Chrome到1.0版本
    升级安装Windows7后需要处理的兼容性程序(不断更新中)
    解决IE8下无法播放rm的视频网站内容
    升级到NVelocity1.1版本
    安装VS2010中文版初体验
    【iPhone开发】说说Xcode4中xib绑定的原理
    第一个iPhone版本应用发布
    xcode4.2开发最新的ios5应用,分享snow版本下载地址
    xCode 4.X 免证书真机发布及调试
    [转]IT程序员之间薪水差距之大及对职业培训的看法
  • 原文地址:https://www.cnblogs.com/shuibeng/p/django01.html
Copyright © 2011-2022 走看看