Let’s learn by example. Throughout this tutorial, we’ll walk you through the creation of a basic poll application. It’ll consist of two parts: A public site that lets people view polls and vote in them. An admin site that lets you add, change and del…
这一篇主要是呼应第二篇时留下来的一个问题,就是如何自定义默认app admin下的Form  1.绑定数据实体 通过第二篇的努力,已经完成了数据实体到数据库的映射,可以将界面的更改保存到数据库,我们建立了实体之后,在polls/admin.py中是这样绑定数据实体的: from .models import Question admin.site.register(Question) 但是这样绑定的数据实体在界面可设置的灵活性太小,比如第二篇里面后半截遇到的问题,没有办法指定展示问题的内容: 所…
创建admin用户 D:\desktop\todoList\Django\mDjango\demoSite>python manage.py createsuperuser 然后输入密码 进入admin网址 D:\desktop\todoList\Django\mDjango\demoSite>python manage.py runserver 8080 改变字段顺序 fileds 改变字段的顺序 fieldset 给字段分组 classes 折叠字段 serch_fields 添加搜索框…
经过前面的努力,到这里我们已经基本完成了,从服务器到浏览器的数据下发,还没有解决从浏览器到服务器的数据上传,这一节将创建一个Form获取从浏览器提交的数据 1.新建Form 接着前面建的项目,网上调查,每一个Question有多个Choice,当用户针对特定问题,可以提交选择,数据库记录每个Choice的vote数,所以新建: polls/templates/detail.html 编写代码如下: <h1>{{ question.question_text }}</h1> {% i…
Quick install guide 1.1   Install Python, it works with Python2.6, 2.7, 3.2, 3.3. All these version of Python include a lightweight database SQLite, so you don't need to setup a database 1.2   Remove any old versions of Django: if you are upgrading y…
第一个Django app   by:授客 QQ:1033553122 测试环境: Python版本:python-3.4.0.amd64 下载地址:https://www.python.org/downloads/release/python-340/ Win7 64位   Django  1.11.4 下载地址:https://www.djangoproject.com/download/ 安装django python setup.py install 测试是否成功 >>> imp…
引言 有时候,我们需要将自己写的app分发(dist)给同事,分享给朋友,或者在互联网上发布,这都需要打包.分发我们的app. Django的子系统重用是基于app级别的.也就是一个项目可以包含多个互相独立的app,不同项目之间没有关系.但是,一个app可以属于多个项目,可以在任何地点.任何时间和任何项目中被重用.你需要将该app运行时所必须的全部文件.资源.配置.数据等等都封装在一个整体内. 打包工具:setuptools.pip.一般情况下安装Python时已自带安装了它们. 引用官方文档:…
编写你的第一个 Django app,第一部分(Page 6)转载请注明链接地址 Django 2.0.1 官方文档翻译: Django 2.0.1.dev20171223092829 documentation 让我们从一个例子开始学习. 在本教程,我们会介绍一个基本的投票app的创建. 它由两部分组成: 一个允许人们查看投票(名词)和投票(动词)的公开的站点. 一个让你可以添加.更改和删除投票的管理站点 我们假定你已经安装好 Django.你可以在 shell 提示符后运行以下命令来查看dj…
编写你的第一个 Django app,第七部分(Page 12)转载请注明链接地址 本节教程承接第六部分(page 11)的教程.我们继续开发 web-poll应用,并专注于自定义django的自动生成的admin站点,这点我们在第二部分(page 7)中探讨过. 自定义admin表单 通过在admin.site.register(Question)中注册Question模型,django可以构建一个默认的表单形式.通常,你会希望自定义表单的外观和工作方式.你会在注册对象时告诉django你想使…
编写你的第一个 Django app,第六部分(Page 11)转载请注明链接地址 本教程上接前面第五部分的教程.我们构建了一个经过测试的 web-poll应用,现在我们会添加一个样式表和一张图片. 除了服务器上生成的HTML,web应用一般需要其他文件 -- 例如图片,JavaScript,或CSS -- 渲染完整的web页面所必须的内容.在Django中,我们引用的这些文件称为"静态文件". 对于小的项目,这没有什么大不了.因为你只要将这些静态文件保存到你的web服务器可以找到的地…
编写你的第一个 Django app,第五部分(Page 10)转载请注明链接地址 我们继续建设我们的 Web-poll 应用,本节我们会为它创建一些自动测试. 介绍自动测试 什么是自动测试 测试是简单代码可用性的一个常规操作. 测试分为不同的级别.有一些此时适用于一些很小的细节(特定的模型方法是否返回预期的值),而另外一些则覆盖整个软件操作(用户在站点行输入的一个序列是否会产生预期的结果).这和你之前在第二节(part 2,page7)中做的测试没有什么区别,使用shell(这里少一个链接)去…
编写你的第一个 Django app,第四部分(Page 9)转载请注明链接地址 该教程上接前面的第三部分.我们会继续开发 web-poll 应用,并专注于简单的表单处理和简化代码. 写一个简单的表单(form) 让我们更新一下我们上个教程编写的的 poll 的 detai 模板("polls/detail.html"),模板会包含一个 HTML <form> 元素: <!--polls/templates/polls/detail.html--> <h1…
编写你的第一个 Django app,第二部分(Page 7)转载请注明链接地址 本教程上接前面的教程.我们会配置数据,创建你的第一个 model,并对Django 自动生成的 admin 站点进行快速的介绍. 数据库设置 现在,打开 mysite/settings.py.它是一个带有模块级变量的普通 Python 模块,也是 Django 的配置文件. 默认情况下,配置中使用的是 SQLite,如果你是一个数据库新手,或者你只是对 Django 刚兴趣儿想尝试一下,这是最简单的选择.Pytho…
编写你的第一个 Django app,第三部分(Page 8)转载请注明链接地址 本页教程接前面的第二部分.我们继续开发 web-poll app,我们会专注于创建公共接口上 -- "视图". 概述 在你的 Django app中,视图是一个 web 页面的类型,一般服务于一个特定的函数,并拥有一个特定的模板(template).例如:在 blog app中,你可能有下面这些视图: Blog homepage – 显示少量最新的条目 Entry "detail" p…
推荐学校django博客:http://pythonzh.cn/post/8/ django app 可以理解为一个文件夹: 里面包含了相关功能的代码.通过manage.py来创建 web app 激活虚拟python环境 进入manage.py所在目录,执行python manage.py startapp blog 可以看到和manage.py同级目录blog 建好文件夹,要告知django这是个应用,修改settings.py…
闲来无事,折腾折腾. 老是听说tonado是个异步web框架和服务器,作为框架倒是了解到了,但是服务器一直不太懂.所以决定了解一下,既然可以做服务器,那就把自己的django app部署到这上边去. 先是*Google*了一下,找到了一篇相关[博客](https://thinkfaster.co/2015/01/run-django-on-tornado/).于是乎,将其改造改造,直接搬过来.原作是要用*websocket*这个东东,而我只是要App部署上去就OK.发现需要的代码是相当精简的.…
Django App部署到XAMPP上 准备工作 首先一定要保证自己的代码在本地可以运行! 同时在服务器上把需要的库,什么数据库之类的都装好! 源码安装mod_wsgi 从mod_wsgi的gitgub上下载源码安装包 解压缩:tar xvfz mod_wsgi-X.Y.tar.gz,然后cd mod_wsgi-X.Y 进行配置:./configure --with-apxs=/opt/lampp/bin/apxs make,其中有两个坑: 找不到PERL库: [解决方法]修改apxs文件vi…
django里面的model和form其实有很多地方有相同之处,django本身也支持用model来简化form 一般情况下,我们的form是这样的 from django import forms class LoginForm(forms.Form): username = forms.CharField(required=True) password = forms.CharField(required=True, min_length=5) 如果使用model简化之后 class Use…
django表单系统中,所有的表单类都作为django.forms.Form的子类创建,包括ModelForm. 关于django中的表单系统有两种: 基于django.forms.Form 基于django.forms.ModelForm 表单API form.is_bound() 表单有两种状态:绑定和未绑定,使用form.is_bound()来判断. form.is_valid() 验证表单数据是否合法,返回True或者False form.errors 表单的错误字典 Form.has_…
$django-admin.py startproject web2 $cd web2/ $python manage.py startapp blog $vim web2/settings.py 注意settings.py以下两个部分,首先要配置数据库,其次要在INSTALLED_APP里添加刚才新建的app DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', # Add 'postgresql_psycopg2',…
接着上一节(二)的内容,首先启动站点,通过界面添加Question和Choice两张表的数据,因为接下来,要向polls app里面添加views. 1.添加数据如下(这里是通过界面操作添加的数据) Question Choice      2.添加views 编写polls/views.py,添加detail(指定question的详情),results(指定question的投票结果),vote(指定question投票),每个view指定question_id作为参数,添加如下代码: de…
这一篇接着上一篇polls App自动创建admin app.     1.安装数据库 这里的内容从官网看越看越像 EntityFramework的内容.Python支持SQLite,MySql,Oracle,PostgreSQL,官网提供的例子连接的是Sqlite数据库,这篇将基于Mysql 首先查看MySql服务命令在前面的随笔中提到过:http://www.cnblogs.com/andayhou/p/8277364.html,在Terminal 中执行: 开启mysql57服务: 新打开…
经过配置Pycharm在上一次的笔记中,已经解决了编写Django web程序调试的问题,这篇将记录Django官网提供的例子程序!          1.查看Pycharm terminal是否可用,查看安装的Django版本 >python -m django --version        2.创建项目 使用如下命令创建项目: >django-admin startproject firstPro #这个是上一节中配置过的Django路径下的 执行成功命令之后,来看看Django-ad…
创建APP ORM 介绍 ORM的操作 说明一下 GET 和 POST 的区别: , GET ①获取一个页面 ②提交数据 数据显示在URL ?user=alex&pwd=alexdsb ,POST from 表单提交数据 数据不显示 创建APP 创建APP 有两种方式 一. 命令行创建APP文件: python manage.py startapp app01 执行命令后 项目目录下会多出一个app文件 二. 也可以用pycharm来创建app文件 1. Django项目创建后追加app: 可以…
前面已经说过了Django中model的一些用法,包括orm,以及操作的api,接下来就是搭一些简单的界面学习view——Django中的view.主要介绍以下两个方面: url映射 请求处理 模板文件 url映射和请求处理共同构成了MVC中的C——controller,这里面涉及了url的写法(主要是正则表达式),接收页面传递过来的参数.在Django中可以使用template来进行页面渲染,这样可以直接使用传递过来的数据. url映射 这里紧接着上一篇的工程完善polls项目,polls网站…
上一篇已经完成了polls的基本功能,接下来完善剩下的vote功能和并使用generic views改进请求处理view.包含表单的简单运用和前后台参数传递. 目录 vote:完善投票功能 generic views:改进views.py vote 编辑detail.html,添加投票投票功能 <h1>{{question.question_text}}</h1> {% if error_message %}<p><strong>{{ error_messa…
Test——很重要但是没有被重视起来的一个环节,至少是我自己,其实自己之前在做java web的时候就去尝试过怎么做REST接口的测试,一直没有找到一种合适方式,而且因为时间紧没有进一步深究,但是造成的后果每次做了修改之后都测试不充分,引起新的问题,所以这次对于python正好看看Django的单元测试. 用的是单独的数据库,数据库是干净的(暂未有数据库,test所有操作都是从零开始),不会对正式的数据库造成影响 Test Model 到现在我们主要的业务逻辑代码在model和view里面,所以…
缘起 既然python都学了,学习python的时候感觉是相见恨晚,一种新的编程语言带给我一种新的思考问题的方式,为了巩固学过的东西并进一步学习python,就想学学Django,看看会不会带给我关于web新的东西.把自己学习过程记录在这里,发现每次写博客都是对学习过的东西的一次整理和提升. 新建一个project startproject python和Django的安装不再详述,我的环境python2.7,Django1.9.7 . django-admin startproject mys…
Django是符合MVC架构的,这里现学习M—Model,而且Django自带了一个管理model(数据库)的界面,所以一并学习. Database 配置 编辑Django的配置文件settings.py进行配置 添加polls app,修改后如下 INSTALLED_APPS = [ 'django.contrib.admin', # 管理界面 'django.contrib.auth', # 认证系统 'django.contrib.contenttypes', # 框架的content t…
经过前面4篇的努力,已经基本完成了,polls站点的功能,但是所有界面都没有涉及样式,和JavaScript的导入.到目前为止了解到的Django是通过解析Url来完成对客户端的响应的,那么组成站点所必须的css,script,image这些不需要服务器编译的静态资源是如何加载的 1.新建静态资源文件夹及文件 类似app模板,新建路径及文件polls/static/polls/site.css,App目录结构如下: 编辑site.css如下: body { background:red; col…