自分层结构的 Web 设计理念普及以来,选择适合的开发框架无疑是项目成功的关键。在动态语言领域,Python、Ruby、Groovy 等语言在 Web 开发中的应用日益广泛。刚刚度过两周年生日的 Python 语言 Web 框架 Django,以其新颖简洁的开发模式和巨大的发展潜力,逐渐赢得大量开发者的青睐。本文通过完整的代码示例,详细叙述 Django框架应用于 Web 开发的整个流程,并帮助开发者了解 Django 框架所带来的高效与便捷。Ref:http://www.ibm....
同源策略首先基于安全的原因,浏览器是存在同源策略这个机制的,同源策略阻止从一个源加载的文档或脚本获取或设置另一个源加载的文档的属性。而如果我们要跳过这个策略,也就是说非要跨域请求,那么就需要通过JSONP或者CORS来实现了。JSONP什么是JSONP首先提一下JSON这个概念,JSON是一种轻量级的数据传输格式,被广泛应用于当前Web应用中。JSON格式数据的编码和解析基本在所有主流语言中都被实现,所以现在大部分前后端分离的架构...
一、Django中数据库的配置1 django默认支持sqlite,mysql, oracle,postgresql数据库。 <1> sqlite django默认使用sqlite的数据库,默认自带sqlite的数据库驱动 。 引擎名称:django.db.backends.sqlite3 <2> mysql 引擎名称:django.db.backends.mysql2 mysql驱动程序 MySQLdb(mysql python) mysqlclient MySQL PyMySQL(纯python的mysql驱动程序)3 在django的项目中会默认使用sqli...
模版中的变量由context中的值来替换,如果在多个页面模版中含有相同的变量,比如:每个页面都需要{{user}},笨办法就是在每个页面的请求视图中都把user放到context中。 Python代码 from django.temlate import loader,Context t = loader.get_template(‘xx.html‘) c = Context({‘user‘:‘zhangsan‘}) return HttpResponse(t.render(c)) #httpresponse 也可以简写为: Python代码 from django.short_cuts import re...
部署得过程很简单,部署得核心在于,为什么要这样做,每一个参数代表什么意思,最终的目的是得了解,一些基概念性的东西。uWsgi简介说Uwsgi之前,先说一下Wsgi。什么是Wsgi? WSGI: 是一种Web服务器网关接口,它是一个Web服务器(如Nginx) 与应用服务器(如uWSGI服务器)通信的一种规范。uWSGI是一个Web服务器,它实现了WSGI协议,uwsgi,http等协议,Nginx中HttpUwsgiModul的作用是与uWSGI服务器进行交换那么那些框架自带了Wsgi Se...
在Django项目部分之ModelModel模块是数据库与用户的交互模块一般而言我们都会选择Mysql数据库进行操作,那我们怎样将Django项目与mysql数据库连接起来呢?1、首先,按如图所示添加Mysql数据库 2、添加好数据库后在setting.py文件中修改DATABASEDATABASES = { ‘default‘: { ‘ENGINE‘: ‘django.db.backends.mysql‘, ‘NAME‘:‘mysite‘,# 要连接的数据库,连接前需要创建好 ‘USER‘:‘root‘, # 连...
dele_id = Fee_details_invoices.objects.filter(fee_detail_id__in=fee_id_list, return_type='2').values_list('fee_detail_id', flat=True) Fee_details_invoices.objects.filter(fee_detail_id__in=dele_id).delete()报错:django.db.utils.DatabaseError: (1093, "You can't specify target table 'fee_details_invoices' for update in FROM clause")错误分析解决:第一行代码的意思是获取某些条件行的某个字段第二行代码去删...
django.db.migrations.exceptions.InconsistentMigrationHistory: Migration admin.0001_initial is applied before its dependency users.0001_initial on database ‘default‘.问题分析,在配置中设置了 AUTH_USER_MODEL = ‘user.User‘ (应用名.模型类名),扩展django自带的user认证.由于不是项目的第一次迁移,所以会产生此问题,解决方案如下:注释掉两个地方: INSTALLED_APPS = [ ... #‘django.contrib.admin‘,... ]path(‘a...
什么是同源: URL由协议、域名、端口和路径组成,如果两个URL的协议、域名和端口相同,则表示他们同源。注意:假如你的网站ip是123.123.123.123,网站的域名是www.abc.com。 http://123.123.123.123:80与http://www.abc.com:80仍然不是同源,因为浏览器会根据字符串来判断的!什么是同源策略同源策略是浏览器的一个安全功能,不同源的客户端脚本在没有明确授权的情况下,不能读写对方资源。所以a.com下的js脚本采用ajax读取...
SAE+Django 一:本地安装的工具,版本一定匹配1:python 2.7.32:SVN3:MySQL_python-1.2.3-py2.74:MySQL5:Django1.4 二:开发过程中注意大小写匹配困扰我好长时间问题三:SAE配置config.yaml 1name: guolong201302222 version: 53 4libraries:5 - name: "django" 6 version: "1.4" 7 8handlers:9 - url: /static 10 static_dir: static index.wsgi import sae from guolong20130222 import wsgiapplication = sae.create...
初识Ajax:? Ajax并不是一门新的语言,它其实就是基于js写的一个功能模块而已由于原生js书写ajax较为繁琐,django中我们一般直接使用jQuery封装好的ajax模块案例:? 页面上有是三个input框,一个按钮,用户在前两个框中输入数字,点击按钮保证页面不刷新的情况下将数据发到后端做计算,再将计算好的结果发送给前端展示到第三个input框中ajax基本语法结构 $.ajax({// 1. 到底朝哪个后端提交数据url:'', // 控制数据的提交路径 (有三...
1. Django支持两种对应关系,CBV和FBVFBV:function base view &CBV:class base view url.py index---函数名 views.py def 函数(request): /index/ -> 函数名 /index/ ->类,请求来了以后,会执行类里面的指定的方法。 2.CBV提交----- class Home(view) Home类必须继承view.2.1 urls.py中写对应关系 2.2 views.py中写函数 2.3 home.html中写模板 3. 过程服务器端先运行起来; 客户端发来请求,先去匹配URL,找到类。再进行二...
首先是当前时间的确定,对于年月日,orm模型都有对应的方法直接查询,周是没有方法直接查询的,我是没有找到这个方法,只能间接的查询 123now_time = datetime.datetime.now() # 如果数据库保存的是UTC时间,程序不会蹦但是会提示你这不是本地时间 now_time_utc = datetime.datetime.utcnow()查询本周产生的数据123456# 当前天 显示当前日期是本周第几天day_num = cur_time.isoweekday()# 计算当前日期所在周一monday = (cur_tim...
JSON简介:o JSON 指的是 JavaScript 对象表示法(JavaScript Object Notation)o JSON 是轻量级的文本数据交换格式o JSON 独立于语言 o JSON 具有自我描述性,更易理解* JSON 使用JavaScript 语法来描述数据对象,但是 JSON 仍然独立于语言和平台。JSON 解析器和 JSON 库支持许多不同的编程语言。 序列与反序列化:JS中的JSON对象可以对数据进行序列化(JSON.stringify())和反序列化(JSON.parse())处理;py中jso...
整个Django的访问流程:浏览器 urls: http://127.0.0.1:8000/timer url.py:1, http://127.0.0.1:8000/timer GET 无请求数据2,url匹配 url: url(r‘^timer/‘,views.showtime)3,showtime()函数4,响应 时间字符换浏览器 urls: http://127.0.0.1:8000/login url.py:1,http://127.0.0.1:8000/login/ GET 无请求数据2,url匹配 url(r"^login",views.login)3,login()函数4,响应 login.html函数返回的url是http://1...