一、项目目录结构介绍

manager.py 与项目进行交互的命令行工具集的入口(项目管理器)

MyDjango 目录:项目容器,包含项目的基本配置,目录名称不建议修改

__init__.py Python中声明模块的文件,内容默认为空

settings.py 项目的总配置文件,包含数据库、Web应用、时间等各种配置

urls.py URL配置文件,Django项目中所有地址(页面)都需要我们自己去配置其URL

wsgi.py WSGI(Python Web Server Gateway Interface)Python服务器网关接口,Python应用与Web服务器之间的接口

mytest目录:开发者创建的应用

命令行:python manage.py startapp mytest(使用命令行创建应用时需要手动将应用名添加到settings.py中的INSTALLED_APPS里,应用名不能与Python中模块名相同)

Django服务器启动命令:python manage.py runserver [端口号]

二、应用目录结构介绍

migrations 数据移植(迁移)模块

__init__.py Python中声明模块的文件,内容默认为空

admin.py 应用的后台管理系统的配置

apps.py 应用的一些配置,Django-1.9以后自动生成

models.py 数据模型,使用ORM框架,类似于MVC结构中的Models(模型)

tests.py 自动化测试模块,Django提供了自动化测试功能,在这里编写测试脚本(语句)

views.py 执行响应代码和逻辑处理的主要模块,包含项目中的大部分代码

三、响应页面示例

编辑views.py

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

编辑urls.py

每个URL都以url的形式写出来,url函数放在urlpatterns列表中,url函数三个参数:URL(正则)、对应的方法、名称

四、URL配置

在根urls.py中引入include;在APP目录下创建urls.py文件,格式与urls.py相同;根urls.py中url函数第二个参数改为include('blog.urls')

注意事项:根urls.py针对APP配置的URL名称,是该APP所有URL的总路径; 配置URL时注意正则表达式结尾符$和/

五、Templates介绍

定义:使用了Django模板语言(Django Template Language, DTL)的HTML文件,也可以使用第三方模板(如Jinja2)

5.1 使用步骤

  • 在APP的根目录下创建名叫Templates的目录
  • 在该目录下创建HTML文件
  • views.py中返回render()

5.2 DTL初步使用

render()函数中支持一个dict类型参数,该字典是后台传递到模板的参数,键为参数名,在模板中使用{{ 参数名 }}来直接使用

5.3 Django查找Templates

Django按照INSTALLED_APPS中的添加顺序查找Templates,不同APP下Templates目录中的同名.html文件会造成冲突

解决Templates冲突方案:在APP的Templates目录下创建以APP名为名称的目录,将html文件放入新创建的目录下

六、Models介绍

Django中的Models通常是一个Model对应数据库的一张数据表,Django中的Models以类的形式表现,它包含了一些基本字段以及数据的一些行为

ORM(Object-Relational Mapping, 对象关系映射):实现了对象和数据库之间的映射,隐藏了数据访问的细节,不需要编写SQL语句

6.1 编写Models步骤

  • 在APP根目录下创建models.py,并引入models模块
  • 创建类,继承models.Model,该类即是一张数据表
  • 在类中创建字段,字段即类里面的属性(变量)

attr = models.CharField(max_length = 64) 更多关于类的字段以及可选参数

6.2 生成数据表:

命令行中进入manage.p同级目录执行python manage.py makemigrations app_name(可选),再执行python manage.py migrate

6.3 查看生成的数据表

Django会自动在app/migrations/目录下生成移植文件,执行python manage.py sqlmigrate 应用名 文件id 查看SQL语句

默认sqlite3的数据库在项目根目录 下db.sqlite3

6.4 前端页面呈现数据

views.pyimport models

article = models.Article.objects.get(pk=1)

render(request, page, {'article' : article})

模板可直接使用对象以及对象的"."操作,如{{ article.title }}

七、Admin介绍

Admin是Django自带的一个功能强大的自动化数据管理界面,被授权的用户可直接在Admin中管理数据库,Django提供了许多针对Admin的定制功能

7.1 配置Admin

创建超级用户:python manage.py createsuperuser

后台登录地址:http://127.0.0.1:8000/admin/

更改语言为中文:修改settings.py中LANGUAGE_CODE = 'zh_Hans'

7.2配置应用

在应用下admin.py中引入自身的models模块(或里面的模型类)

编辑admin.py: admin.site.register(models.Article)

7.3 修改数据默认显示名称

Article类下添加一个方法

根据Python版本选择__str__(self)__unicode__(self)return self.title

八、Templates过滤器

写在模板中,属于Django模板语言,可以修改模板中的变量从而显示不同的内容

使用方法:{{ value | filter }}, 如{{ list_nums | length }}

过滤器可叠加:{{ value | filter1 | filter2 | … }}

九、Django Shell

Python的交互式命令行程序,它自动引入了我们的项目环境

使用方法:python manage.py shell

作用:进行调试,测试一些未知方法

程序员交流群,干货分享,加我拉你入群。

【连载】Django入门到实战(一)相关推荐

  1. 【DRF+Django】微信小程序入门到实战_day04(上)

    (0)摘要 # 课程链接 入门到实战,讲讲公司的微信小程序[django+drf+小程序实战]_哔哩哔哩_bilibili # 微信开发者文档 微信开放文档 # 课程内容 (1)P28_用户登录页面 ...

  2. 【DRF+Django】微信小程序入门到实战_day03(下)

    (0)摘要 # 课程链接 入门到实战,讲讲公司的微信小程序[django+drf+小程序实战]_哔哩哔哩_bilibili # 微信开发者文档 微信开放文档 # 课程内容 (1)P28_发送短信验证码 ...

  3. 【DRF+Django】微信小程序入门到实战_day01(下)

    (0)摘要 # 课程链接 入门到实战,讲讲公司的微信小程序[django+drf+小程序实战]_哔哩哔哩_bilibili # 文档链接 微信开放文档 # 课程内容 (1)flex 布局 (2)fle ...

  4. Django企业开发实战 高效Python Web框架指南 笔记 (一)

    Django企业开发实战 高效Python Web框架指南 笔记 (一) 内容: 作者是 the5fire,他的博客地址:https://www.the5fire.com/957.html 2016年 ...

  5. 《Docker技术入门与实战》pdf

    下载地址:网盘下载 内容简介  · · · · · · [编辑推荐] <Docker技术入门与实战>是中国首部Docker著作,一线Docker先驱实战经验结晶,来自IBM和新浪等多位技术 ...

  6. 视频教程-Python框架Djanggo从入门到实战教程(企业级项目实战)-Python

    Python框架Djanggo从入门到实战教程(企业级项目实战) 多年web开发经验,精通HTML.CSS.JavaScript.HTML5.CSS3等Web前端开发技术,技术纯熟,项目经验丰富.授课 ...

  7. 人工智能入门与实战-前言

    人工智能入门与实战:前言 你好,我是猪弟爸爸,互联网行业的一名程序员老鸟,从事互联网行业已十余年之久,今年我家猪宝宝的出生也让我成为了一名兼职奶爸,由于我家宝宝在家族排名老小且猪年出生,所以宝宝小名就 ...

  8. 【Python全栈开发从入门到实战】持续更新中......

    本专栏为Python全栈开发系列文章,技术包括Python基础.函数.文件.面向对象.网络编程.并发编程.MySQL数据库.HTML.JavaScript.CSS.JQuery.bootstrap.W ...

  9. 《Go语言从入门到实战》学习笔记(1)——Go语言学习路线图、简介

    非常有幸在<极客时间>上看到<Go语言从入门到实战>这门课程,本课程的作者给出了较为详细的学习路线图,具体如下: 学习路线图  学习目的 个人学习的目的主要是了解Go语言的基本 ...

最新文章

  1. antd提交表单_表单序列化
  2. 【大会】没有什么比把码率降低更爽的了
  3. 使用Fiddler监控使用RestTemplate发送网络请求的Java应用
  4. 页面显示pdf_PDF怎样合并?在Mac上合并PDF文件的最佳方法
  5. shell脚本实现一个彩色进度条
  6. 程序猿财务自由之路·规划篇
  7. springboot酒店客房管理系统设计
  8. Mac mini M1使用简单体验(编程、游戏、深度学习)
  9. 甄别客户需求,提高解决问题的效率
  10. 高考失利后选择出国留学,一年至少20万人民币到底值不值?
  11. windows redis cmd 命令启动
  12. php实现邮箱激活功能
  13. 学生上课睡觉班主任怎么处理_学生上课睡觉怎么办
  14. 天润融通java面试_【天润融通怎么样?】-看准网
  15. 计算机控制技术(于海生)-整理
  16. 使用单链表来判断字符串是否为回文字符串
  17. Mac 原神电脑版下载安装使用教程,MacBook 上也可以玩原神了
  18. python-numba库
  19. 项目整体管理:结束项目阶段--收尾过程组
  20. R语言--聚类学习笔记

热门文章

  1. Windows下的Crontab表达式解析DLL的使用
  2. JSON-JSON 百科
  3. Android工程中追踪修改bug的总结
  4. Web Application Security 网络应用程序安全 - (二)2010年网络安全威胁排行榜TOP 10...
  5. Trip to America for 3 more months
  6. 诗与远方:无题(二十七)- 写给我妹妹的一首诗
  7. Python学习笔记之类(四)
  8. 设计模式之不简单的工厂模式(三)
  9. Struts2项目搭建
  10. 苹果系统中国日历服务器,AppleMac苹果电脑最好用的中国农历日历(TinyCal)v1.11.0