Python 【第九章】 Django基础
在windows 命令行上安装Django
在CMD命令行中输入以下命令进行安装。
pip install Django

在windows python安装目录上会出现 一个django-admin.exe程序 (需要把 django-admin.exe 添加环境变量)

、创建Django程序
- 终端命令:django-admin startproject sitename
- IDE创建Django程序时,本质上都是自动执行上述命令
上述的sitename是自己定义的项目名称!
其他常用命令:
python manage.py runserver 0.0.0.0:port #启动django
python manage.py startapp appname #创建项目
python manage.py syncdb
python manage.py makemigrations
python manage.py migrate
python manage.py createsuperuser #设置后台管理员帐号
路由系统
1、每个路由规则对应一个view中的函数
settings.py内要进行相应添加APP

如果是返回网页,需要在settings中指定templates路径。



运行结果:

静态文件,例如 CSS ,JQUERY 导入





在index.html脚本导入时影射目录就可以使用/fff/ 对应代码<script src="/fff/jquery-1.8.2.min.js"></script>
在urls.py里添加RUL跳转,index是在views.py中设置函数


index.html就是在templates内


______________________________________________________________________________
模版,内存实现:
暂时停止MIDDLEWARE中影响跨域请求。

在view 中添加一个全局变量,并通过request.method判断是POST请求,最后通过全局变量返回到html模版中

html模版中通过以下格式得到数据
{% for item in data %} #for循环
<tr>
<td>{{ item.user }}</td> #两个大括号做循环体
<td>{{ item.email }}</td>
</tr>
{% endfor %} #循环结束


————————————————————————————————————————————————————————————
动态模版
1、连接数据库。2、创建SQL数据库 django内部 通过一个类表进行实现,内部实现 ORM
models中创建一个类

settings注册app名称

使用到django自带数据库sqllist
python manage.py syncdb #注意:Django 1.7.1及以上的版本需要用以下命令
python manage.py makemigrations
python manage.py migrate #关键这个命令运行
创建数据库表执行以下两个语句:
python manage.py makemigrations
python manage.py migrate


在view中创建表,并把传入表数据,通过模版,向html文件输出



通过数据库记录数据信息,在服务器关闭,再打开服务器,已输入数据可以保存。
————————————————————————————————————————————————————



备注: 在修改了models.py后,有些用户会喜欢用Python manage.py makemigrations生成对应的py代码。 但有时执行python manage.py makemigrations命令,会提示"No changes detected." 可能有用的解决方式如下: 1. 直接使用python manage.py migrate. 可能会先生成对应数据库的py代码,再自动执行这段代码,创建数据库表格 (我没有仔细去读文档 不清楚这条命令的逻辑) 2. 来自:https://docs.djangoproject.com/en/1.8/topics/migrations/ 先 python manage.py makemigrations --empty yourappname 生成一个空的initial.py再 python manage.py makemigrations 生成原先的model对应的migration file




Python 【第九章】 Django基础的更多相关文章
- python第一章计算机基础
第一章 计算机基础 1.1 硬件 计算机基本的硬件由:CPU / 内存 / 主板 / 硬盘 / 网卡 / 显卡 / 显示器 等组成,只有硬件但硬件之间无法进行交流和通信. 1.2 操作系统 操作系统用 ...
- python第十八天-----Django基础
1.路由系统 a.普通路由 url(r'^index$', views.index), b.正则路由 url(r'^index/(\d*)', views.index), url(r'^manage/ ...
- Vue.js-09:第九章 - 组件基础再探(data、props)
一.前言 在上一章的学习中,我们学习了 Vue 中组件的基础知识,知道了什么是组件,以及如何创建一个全局/局部组件.不知道你是否记得,在上一章中,我们提到组件是一个可以复用的 Vue 实例,它与 Vu ...
- Python自动化开发 - Django基础
本节内容 一.什么是web框架 二.MVC和MTV视图 三.Django基本命令 四.路由配置系统 五.编写视图 六.Template 七.ORM 一.什么是web框架 对于所有的web应用,本质上其 ...
- python之路 django基础
Python的WEB框架有Django.Tornado.Flask 等多种,Django相较与其他WEB框架其优势为:大而全,框架本身集成了ORM.模型绑定.模板引擎.缓存.Session等诸多功能. ...
- Python学习-day19 django基础篇
Python的WEB框架有Django.Tornado.Flask 等多种,Django相较与其他WEB框架其优势为:大而全,框架本身集成了ORM.模型绑定.模板引擎.缓存.Session等诸多功能. ...
- python第一章:基础
1.数学操作符: 数学操作符与数学基本类似 最高级:** 第二级:*././/.% 第三级:+ .- 遵循从左到右的顺序 如果想改变优先级 可以使用括号,比如:(3+2)*(5-4)=5*1=5 2. ...
- Python第九章模块和包(2)
1.如果文件下没有__init__.py文件,程序将不会认为这是一个Python的包. 2.如果要使用from 包 import * 则需要 这样做. 是模块中包含 方法 的文件没有包含类: # ...
- Python第九章模块和包
1.import Python文件的时候文件名不能跟Python中自带的关键字重复,否则无法使用关键字的方法. 2.Reload(),重载例子 import sysreload(sys)sys.set ...
- python第九章:面向对象--小白博客
面向对象介绍 一.面向对象和面向过程 面向过程:核心过程二字,过程即解决问题的步骤,就是先干什么后干什么 基于该思想写程序就好比在这是一条流水线,是一种机械式的思维方式 优点:复杂的过程流程化 缺点 ...
随机推荐
- java多线程同步,等待,唤醒
notify().notifyAll().wait()属于java.lang.Object,java.lang.Thread也是Object,自然也有上述方法: sleep().interrupt() ...
- Struts 2 数据校验要用到的类和两种校验方式以及一些校验问题的解决
通过继承ActionSupport类来完成Action开发,ActionSupport类不仅对Action接口进行简单实现, 同时增加了验证.本地化等支持 .真实开发中自定义Action都需要继承该类 ...
- C#计算代码行数
class Program { static void Main(string[] args) { int totalLineCount = 0; string directory; if(args. ...
- SQLSERVER截取字符串
) SET @Name = '\EXAM\061023478874' DECLARE @Position INT --sql first indexof SET @Position = CHARIND ...
- 《Web开发中块级元素与行内元素的区分》
一.块级元素的特性: 占据一整行,总是重起一行并且后面的元素也必须另起一行显示. HTML中块级元素列举如下: address(联系方式信息) article(文章内容) aside(伴随内容) au ...
- Json解析工具的选择
前言 前段时间@寒江不钓同学针对国内Top500和Google Play Top200 Android应用做了全面的分析(具体分析报告见文末的参考资料),其中有涉及到对主流应用使用json框架Gson ...
- 关于多个block问题
在某个添加文本的页面中,leftbarbutton是删除(直接将数组中的这个string删除),rightbarbutton是完成,分别对应两个block,完成的block是一开始写的,写到了view ...
- [Erlang 0114] Erlang Resources 小站 2013年7月~12月资讯合集
Erlang Resources 小站 2013年7月~12月资讯合集,方便检索. 附 2013上半年盘点: Erlang Resources 小站 2013年1月~6月资讯合集 小站地 ...
- Java线程并发:知识点
Java线程并发:知识点 发布:一个对象是使它能够被当前范围之外的代码所引用: 常见形式:将对象的的引用存储到公共静态域:非私有方法中返回引用:发布内部类实例,包含引用. 逃逸:在对象尚未准备 ...
- SQL语句中的where 1=1 和0=1
摘自:http://blog.sina.com.cn/s/blog_afe616ab0101camd.html SQL where 1=1 和0=1的作用 where 1=1; 这个条件始终为True ...