当前位置: 首页 > news >正文

django专题—安装、创建项目、添加应用

框架

Django 紧紧地遵循这种 MVC 模式,可以称得上是一种 MVC 框架。以下是 Django 中 M、V 和 C 各自的含义:

  • M ,数据存取部分,由django数据库层处理,本章要讲述的内容。

  • V ,选择显示哪些数据要及怎样显示的部分,由视图和模板处理。

  • C ,根据用户输入委派视图的部分,由 Django 框架通过按照 URLconf 设置,对给定 URL 调用合适的 python 函数来自行处理。



由于 C 由框架自行处理,而 Django 里更关注的是模型(Model)、模板(Template)和视图(Views),Django 也被称为 MTV 框架 。在 MTV 开发模式中:

  • M 代表模型(Model),即数据存取层。该层处理与数据相关的所有事务:如何存取、如何确认有效性、包含哪些行为以及数据之间的关系等。

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

  • V代表View,业务逻辑层。这一层包含访问模型的逻辑和按照模板显示。你可以认为它是模型和模板的桥梁。


一、Django安装

3种方式:

pip isntall django==版本号    #推荐

easy_install django              #easy_install

python setup.py install         #源码

源码下载

https://pypi.python.org/pypi/Django

1.png


安装步骤:

pip install django==1.6.5

pip list

import django

print(django.get_version()) 




二、 创建项目

1.创建项目

命令:django-admin.py  startproject web    #生成子目录文件

[root@huangzp3 web]# tree /root/python/web/

/root/python/web/

├── manage.py

└── web

├── __init__.py

├── settings.py

├── urls.py

└── wsgi.py


项目文件说明:

__init__.py: 定义一个模块,供import导入调用

setting.py: 配置文件

urls.py:        视图配置文件,相当于MVC的V

wsgi.py:      一般用于结合apache或者nginx


2.修改setting.py配置文件的时区和语言

2.png


3.启动django

命令 python manage.py runserver 0.0.0.0:8000


4.web访问

说明:只有工程,没有应用的页面

3.png



三、添加应用

1.启动一个应用

两种方法:

python manage.py startapp blog    #管理脚本的形式

django-admin.py startapp blog       #添加项目的形式

clipboard.png


应用文件说明:

models.py:相当于MVC模式的M,定义数据模型

views.oy:   相当于MVC中的V,视图模板

test.py:      测试用

admin.py:  管理用


2.web项目目录下setting.py中,添加应用blog

2.png


3.urls.py(属于MVC模型中的C)文件,添加url,并引用index函数

3.png


4.在blog应用目录下,views.py模块中定义index函数

说明:先导入django内置模块;定义的函数必须带参数(请求),有请求(参数名可自定义)就有返回,返回字符串前,先用httpResponse内置函数处理

4.png



5.WEB访问

5.png


其中自定义的返回:

6.png


6.自定义web模板目录

说明:在应用blog目录下,创建一个templates目录,目录名固定写死,用于存放web网页文件,定义index.html

7.png


7.导入web模板

应用blog目录下,views.py文件,先导入模块

说明:t是一个对象,自动从template目录下加载文件;c也是一个对象,上下文Context,替换index.html里面的标记或者变量,因为写的index.html中没有这些,所有暂时定义为空;t的一个方法,渲染c,最后返回;凡是返回到页面上的,都要通过HttpResponse()

8.png


8.关闭进程,再次启动,查看网页

命令 python manage.py runserver 0.0.0.0:8000

9.png









本文转自 huangzp168 51CTO博客,原文链接:http://blog.51cto.com/huangzp/2054575,如需转载请自行联系原作者

相关文章:

  • 自定义的asp.net翻页控件
  • python 数学运算符
  • 标题一定要长~~~~长~~~~~~~~~~~~~~长~~~~~~~~
  • python 中set模块的用法
  • Turbo C 2.0集成开发环境的使用
  • Ajax on Rails 2. The Eras of Web Development
  • 创建按钮的两种方法
  • JavaScript对象知识点总结
  • 在Python常用模块I如何打开相关文件的方法
  • 开发各种信息管理系统的标准演示数据都帮你整理好了,少了录入演示\测试\模拟数据的烦恼了[提供下载]...
  • Web2.0工具箱
  • Lync2013 恢复-整残之后如何重新安装
  • js获得浏览器相关参数【转】
  • ASP.NET 安全认证(三)
  • Centos7.4 安装 Inception
  • [译]前端离线指南(上)
  • 【刷算法】从上往下打印二叉树
  • 08.Android之View事件问题
  • 2017 前端面试准备 - 收藏集 - 掘金
  • Docker 笔记(2):Dockerfile
  • es6要点
  • HashMap ConcurrentHashMap
  • Hibernate【inverse和cascade属性】知识要点
  • iOS | NSProxy
  • Javascripit类型转换比较那点事儿,双等号(==)
  • Python学习之路16-使用API
  • React+TypeScript入门
  • Sass Day-01
  • Spring思维导图,让Spring不再难懂(mvc篇)
  • 前端
  • 微服务入门【系列视频课程】
  • 我的业余项目总结
  • 物联网链路协议
  • 源码之下无秘密 ── 做最好的 Netty 源码分析教程
  • AI算硅基生命吗,为什么?
  • 没有任何编程基础可以直接学习python语言吗?学会后能够做什么? ...
  • #我与Java虚拟机的故事#连载03:面试过的百度,滴滴,快手都问了这些问题
  • #中的引用型是什么意识_Java中四种引用有什么区别以及应用场景
  • (2)(2.10) LTM telemetry
  • (附源码)spring boot校园健康监测管理系统 毕业设计 151047
  • (算法)Game
  • (未解决)macOS matplotlib 中文是方框
  • (原+转)Ubuntu16.04软件中心闪退及wifi消失
  • (原創) 人會胖會瘦,都是自我要求的結果 (日記)
  • (转)重识new
  • .NET 药厂业务系统 CPU爆高分析
  • .NET 应用架构指导 V2 学习笔记(一) 软件架构的关键原则
  • .NET/C# 的字符串暂存池
  • .NET开源的一个小而快并且功能强大的 Windows 动态桌面软件 - DreamScene2
  • .NET使用HttpClient以multipart/form-data形式post上传文件及其相关参数
  • .pings勒索病毒的威胁:如何应对.pings勒索病毒的突袭?
  • ??myeclipse+tomcat
  • @Autowired 与@Resource的区别
  • @property python知乎_Python3基础之:property
  • @select 怎么写存储过程_你知道select语句和update语句分别是怎么执行的吗?