Python Django 初试手记

简介:
在06年因为试图学习php而对python的介绍也看了看,不过当时没有时间去认真学习一下,直到三年后的今天才又开始重新认识这门很有意思的语言。
 
因为需要做python的web开发,所以选择了Django这个框架,首先来介绍一下步骤吧。
 
1:下载python,可以是最新的,然而我下载了python2.6之后,发现Django没有支持2.6相应的mysql链接库,所以今天暂时无法测试其数据库的相关内容了,做了一个Django模板的小例子,开始入门。
2:下载Django,我目前的版本貌似是Django-1.1-beta-1,下载完成后,在其目录里应该能找到setup.py 这个文件。 windows下cmd 执行 python setup.py install,开始安装。
 
安装完毕后,建议检查  pythoninstalldir/Scripts 目录是否在你的 PATH 环境中,如果不在,建议将这个目录设置到 PATH 中。因为如果你采用标准的 Python 安装方法,那么 Django 会自动在 Scripts 目录下安装  django-admin.py 程序。这样,一旦你设置了 Scripts 在 PATH 中,就可以在命令行下任何目录中执行  django-admin.py 了。
 
执行 django-admin.py startproject test 这样就在当前目录下创建了一个test的工作目录.
 
这个  test 将是我们以后工作的目录,许多讲解都是基于这个目录的。
__init__.py
表示这是一个 Python 的包
manage.py
提供简单化的  django-admin.py 命令,特别是可以自动进行  DJANGO_SETTINGS_MODULES 和  PYTHONPATH 的处理,而没有这个命令,处理上面环境变量是件麻烦的事情
settings.py
它是django的配置文件
uls.py
url映射处理文件, Karrigell 没有这种机制,它通过目录/文件/方法来自动对应,而 Django 的url映射是url对于某个模块方法的映射,目前不能自动完成
OK,开始启动它吧
执行 manage.py runserver
 
一旦出现:
Validating models...
0 errors found.
Starting server on port 8000 with settings module 'newtest.settings'.
Go to http://127.0.0.1:8000/ for Django.
Quit the server with CONTROL-C (Unix) or CTRL-BREAK (Windows).
 
说明 Django 真的启来了。在浏览器中看一下,有一个祝贺页面,说明成功了。
 
现在开始构建我所要的东西吧。
 
add.py
 
# -*- coding: utf-8    -*- 

from django.shortcuts  import render_to_response 

address = [ 
        {'name':'alan', 'sex':'男','age':'25','address':'地址11111'}, 
  {'name':'阿汐', 'sex':'男','age':'21','address':'地址222222'}, 
  {'name':'sgicer', 'sex':'男','age':'23','address':'地址3333'}, 
  {'name':'tidewind', 'sex':'男','age':'32','address':'地址4444'}, 
  {'name':'cood', 'sex':'男','age':'22','address':'地址5555'}, 
  {'name':'北极乞丐', 'sex':'男','age':'25','address':'地址6666'}, 
  {'name':'北斗', 'sex':'男','age':'15','address':'地址7777'} 
        ] 

def index(request): 
         return render_to_response('list.html',{'address': address}) 

第一行为了实现编码统一,不然当页面内有中文的时候会出现乱码。
 
导入了render_to_response 这个包,用来向页面输出模板文件以及其内容
address作为一个数组,包含了我所要动态输出的东西。
 
return render_to_response('list.html',{'address': address})
向list.html页面输出address这个数组的内容.
 
OK,让我们来看看list.html,很简单的一个遍历,从address数组中获取数据
 
< h2 >通讯录 </h2> 
< table  width ="100%"  cellpadding ="0"  cellspacing ="0"  id ="tab"  > 
     < tr > 
      < th  width ="17%" >姓名 </th> 
      < th  width ="17%" >性别 </th> 
      < th  width ="22%" >年龄 </th> 
      < th  width ="44%" >地址 </th> 
     </tr> 
    {% for user in address %} 
     < tr > 
     < td >` user`.`name ` </td> 
     < td >` user`.`sex ` </td> 
     < td >` user`.`age ` </td> 
     < td >` user`.`address ` </td> 
     </tr> 
{% endfor %} 
</table> 
此外,要让这个web应用成功的跑起来,需要做一些额外的配置.
 
修改urls.py
 
from django.conf.urls.defaults  import * 

urlpatterns = patterns('', 
        # Example: 
        # (r'^testit/', include('newtest.apps.foo.urls.foo')), 
        (r'^add/$', 'newtest.add.index') 



        # Uncomment  this  for admin: 
#         (r'^admin/', include('django.contrib.admin.urls')), 

 
这里的(r'^add/$', 'test.add.index') 是为了映射我的add.py,当浏览器访问
http://xxx/add时,就对应到了我之前的add.py
 
 
修改 settings.py,在TEMPLATE_DIRS中增加一个路径,其中,我的list.html是放在当前目录的templates下的。
 
TEMPLATE_DIRS = ( 
        # Put strings here, like  "/home/html/django_templates" or  "C:/www/django/templates"
        # Always use forward slashes, even on Windows. 
        # Don't forget to use absolute paths, not relative paths. 
    './templates', 
)
 
 
最终,来看看结果吧. 很不错的体验,继续学习。
 
 
 
本文转自阿汐 51CTO博客,原文链接:http://blog.51cto.com/axiii/168550,如需转载请自行联系原作者

相关文章
|
14天前
|
NoSQL Unix 网络安全
【Azure Cache for Redis】Python Django-Redis连接Azure Redis服务遇上(104, 'Connection reset by peer')
【Azure Cache for Redis】Python Django-Redis连接Azure Redis服务遇上(104, 'Connection reset by peer')
【Azure Cache for Redis】Python Django-Redis连接Azure Redis服务遇上(104, 'Connection reset by peer')
|
1月前
|
机器学习/深度学习 数据采集 数据可视化
基于爬虫和机器学习的招聘数据分析与可视化系统,python django框架,前端bootstrap,机器学习有八种带有可视化大屏和后台
本文介绍了一个基于Python Django框架和Bootstrap前端技术,集成了机器学习算法和数据可视化的招聘数据分析与可视化系统,该系统通过爬虫技术获取职位信息,并使用多种机器学习模型进行薪资预测、职位匹配和趋势分析,提供了一个直观的可视化大屏和后台管理系统,以优化招聘策略并提升决策质量。
|
1月前
|
搜索推荐 前端开发 数据可视化
【优秀python web毕设案例】基于协同过滤算法的酒店推荐系统,django框架+bootstrap前端+echarts可视化,有后台有爬虫
本文介绍了一个基于Django框架、协同过滤算法、ECharts数据可视化以及Bootstrap前端技术的酒店推荐系统,该系统通过用户行为分析和推荐算法优化,提供个性化的酒店推荐和直观的数据展示,以提升用户体验。
|
1月前
|
搜索推荐 前端开发 数据可视化
基于Python协同过滤的旅游景点推荐系统,采用Django框架,MySQL数据存储,Bootstrap前端,echarts可视化实现
本文介绍了一个基于Python协同过滤算法的旅游景点推荐系统,该系统采用Django框架、MySQL数据库、Bootstrap前端和echarts数据可视化技术,旨在为用户提供个性化的旅游推荐服务,提升用户体验和旅游市场增长。
基于Python协同过滤的旅游景点推荐系统,采用Django框架,MySQL数据存储,Bootstrap前端,echarts可视化实现
|
1月前
|
数据采集 自然语言处理 监控
【优秀python毕设案例】基于python django的新媒体网络舆情数据爬取与分析
本文介绍了一个基于Python Django框架开发的新媒体网络舆情数据爬取与分析系统,该系统利用Scrapy框架抓取微博热搜数据,通过SnowNLP进行情感分析,jieba库进行中文分词处理,并以图表和词云图等形式进行数据可视化展示,以实现对微博热点话题的舆情监控和分析。
【优秀python毕设案例】基于python django的新媒体网络舆情数据爬取与分析
|
1月前
|
人工智能 BI 数据处理
【优秀python django系统案例】基于python的医院挂号管理系统,角色包括医生、患者、管理员三种
本文介绍了一个基于Python开发的医院挂号管理系统,该系统包含医生、患者、管理员三种角色,旨在优化挂号流程,提高医疗服务质量和管理效率,并通过信息化手段提升患者就医体验和医院运营决策的数据支持能力。
【优秀python django系统案例】基于python的医院挂号管理系统,角色包括医生、患者、管理员三种
|
11天前
|
前端开发 JavaScript 数据库
python Django教程 之模板渲染、循环、条件判断、常用的标签、过滤器
python Django教程 之模板渲染、循环、条件判断、常用的标签、过滤器
|
13天前
|
监控 安全 中间件
Python Django 后端架构开发: 中间件架构设计
Python Django 后端架构开发: 中间件架构设计
19 1
|
19天前
|
数据库 开发者 Python
Python网络编程:Web框架基础(Flask/Django)
Python作为一种功能强大且易于使用的编程语言,广泛应用于Web开发领域。Python的丰富生态系统中,有两个非常流行的Web框架:Flask和Django。本博文将详细介绍这两个框架的基础知识,并通过综合示例展示如何使用它们构建Web应用。
|
24天前
|
运维 Devops 测试技术
一个人活成一个团队:python的django项目devops实战
DevOps通过自动化的流程,使得构建、测试、发布软件能够更加地快捷、频繁和可靠。本文通过一个python的django个人博客应用进行了DevOps的实战,通过DevOps拉通开发和运维,通过应用云效的DevOps平台实现自动化“软件交付”的流程,使得构建、测试、发布软件能够更加地快捷、频繁和可靠,提交研发交付效率。作为个人项目也是可以应用devops提高效率。
32 3
下一篇
DDNS