windows下python web开发环境的搭建
windows下python web开发环境:
python2.7,django1.5.1,eclipse4.3.2,pydev3.4.1
一. python环境安装
https://www.python.org/ftp/python/2.7/python-2.7.amd64.msi
不多说,装完后把C:\Python27加入到path环境变量里.
然后就溜溜python,看看version啦.OK,next step.
二. python web开发框架django安装
django是一个采用MVC思想的python web开发框架,利用它,你可以很轻松的构建自己的web应用.
https://github.com/django/django/archive/1.5.7.zip
我不知道为啥公司的django是1.5.1的,不知道从哪下的,不需要关心,1.5.7是它的兄长,没啥好担忧的.
ok,就这么愉快的搞定了.
三. Eclipse安装和pydev插件安装
eclipse是老伙伴了,不多说,下载地址自己找去.
pydev是eclipse的一个python IDE插件,它功能很强大,是python开发码农们的福音啊.
安装采用的是老掉牙的Help->Install New Software方法.
输入插件所在url地址http://pydev.org/updates,然后泡一壶茶,等着软件包的出现.
接下来就是典型的软件安装next操作,next->next->next....
装完后会自动提示restart,重启完后进入Window->Preference.
如果安装成功,则会在左边树菜单上出现一个pydev的配置项(有时候由于eclipse和pydev的版本问题,死活会出不来).还有就是3.0以上的pydev是高级货,需要jdk7,如果你还用jdk6,那么这个配置项不会出现的.
接下来配置下pydev插件所使用的python路径.
进入pydev->Intepreters->Python Intepreter,new一个python解释器,选择python解释器为步骤一里面安装好的python.exe,取个霸气点的名字,这里我把这个解释器取名为local_py(本地土著).然后选择系统libs.最终配置完的界面如下.
四. web项目初长成
一切似乎都ok了,是该练习26个字母的时候了.
首先new一个django项目吧, File->New->PyDev Django Project,
这里Intepreter选择我们在步骤三最后配置阶段配置的local_py,也就是说使用本地安装好的python解释器.
选择create 'src' folder... , 这样向导会帮我们创建src文件夹.
点击下一步,出现配置数据库的界面,这里我们连接的是开源的mysql数据库.至于mysql的安装,请百度或google之.
点击"Finish",项目创建向导完成.
项目结构如图所示:
Good,然后我们新建一个app吧,在这里,一个app就相当于一个web应用,里面需要我们自己编辑业务逻辑.
右击项目,Django-> create application(manage.py startapp),输入一个霸气的名称,比如我这里叫pweb,然后就会在项目里新建一个package,里面包含模型,视图和测试py文件.
在models.py文件中,我们编写模型类,一个模型类对应的是数据库一张表的结构,在java里面我们叫它pojo.不同的是,在java里这个pojo是很纯洁的,而在这里,我们这个模型类必须要继承models.Model,这样才能享受到Model类里面很多属性和方法.
好,let's code.
models.py
#coding=utf8
from django.db import models
from django.contrib import admin # Create your models here.
class Product(models.Model):
name=models.CharField(max_length=50)
income=models.DecimalField(max_digits=5, decimal_places=2)
outcome=models.DecimalField(max_digits=5, decimal_places=2) class Meta:
#在mysql里面对应的表是tb_product,你要不指定,表名会采用模块名_类名,即'pweb_product',so老实一点比较好
db_table="tb_product"
app_label = 'pweb' class ProductAdmin(admin.ModelAdmin):
#要显示的字段
list_display = ('name','income','outcome')
#注册到django自带的admin模块
admin.site.register(Product, ProductAdmin)
其中Meta内部类的用法参见http://www.cnblogs.com/walkerwang/archive/2011/04/28/2031298.html
ProductAdmin类用来定义Product页面需要展示那些字段的,它继承了ModelAdmin,自然可以使用admin模块的相关功能.
urls.py
from django.conf.urls import patterns, include, url from django.contrib import admin
admin.autodiscover() # Uncomment the next two lines to enable the admin:
# from django.contrib import admin
# admin.autodiscover() urlpatterns = patterns('',
# Examples:
# url(r'^$', 'MyWebDemo.views.home', name='home'),
# url(r'^MyWebDemo/', include('MyWebDemo.foo.urls')), # Uncomment the admin/doc line below to enable admin documentation:
# url(r'^admin/doc/', include('django.contrib.admindocs.urls')), # Uncomment the next line to enable the admin:
# url(r'^admin/', include(admin.site.urls)),
url(r'^admin/', include(admin.site.urls)),
)
定义url映射关系,我们访问admin页面就交由相应的方法来处理,这里admin模块已经帮我们封装好了,比如访问添加页面则调用哪个方法,访问查询页面又是哪一个.
settings.py
INSTALLED_APPS = (
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.sites',
'django.contrib.messages',
'django.contrib.staticfiles',
'django.contrib.admin',
'pweb',
# Uncomment the next line to enable the admin:
# 'django.contrib.admin',
# Uncomment the next line to enable admin documentation:
# 'django.contrib.admindocs',
)
别忘了添加这个pweb模块,刚才咱不是通过create application创建了歌app吗,确认已经把这个app添加上去了. 五. 数据库配置 由于django自带的admin模块需要一些额外的表,因此我们需要同步一下数据库,这个可以通过执行manage.py syncdb,而pydev也很人性化,直接就可以通过右击执行Django-> Sync DB(manage.py syncdb).这里需要你创建一个superuser(超级用户,也就是超级管理员),我们就叫他admin吧. 执行完后,去mysql数据库里面瞅瞅啥情况,这里,我用的一个图形化的软件navicat作为mysql管理工具.
然后,咱们再"火上浇油",创建一个表名字叫tb_product,跟刚才models.py里面配置的表名对应起来.
CREATE TABLE `tb_product` (
`name` varchar(50) DEFAULT NULL,
`income` decimal(10,0) DEFAULT NULL,
`outcome` decimal(10,0) DEFAULT NULL,
`id` int(11) NOT NULL AUTO_INCREMENT,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;
注意,id字段一定要加上,否则页面上会报错说找不到id字段.而且id要设置为自增长(AUTO_INCREMENT),否则页面上添加记录也会报错.这都是admin模块要求的.
Notes: 第五步和第六步的顺序反过来了,正常是先设计表结构,然后再编码的, 这里我就不再改了.
六. 享受革命胜利果实
ok,经过一系列的步骤,我们就可以开始启动服务器了. 右击项目,Run as->PyDev: Django.项目就这样愉快的起来了.
访问http://127.0.0.1:8000/admin我们就可以看到页面了.
使用刚才指定好的admin管理员进行登陆后,看到一个小清新的界面.
其中,Pweb下的product就是我们在第四步里面代码的体现了.
我们可以查看,编辑,添加,删除Product,而事实上我们根本没有写一丝一毫的增删改查sql和页面跳转等实现,一切就是那么轻松.从中也看到了Django的强大(事实上,这只是一个练手的例子,真正的web项目没有这样简单的)
ok,教程就到这里为止,希望大家能有所收获.
windows下python web开发环境的搭建的更多相关文章
- 《Python入门》Windows 7下Python Web开发环境搭建笔记
最近想尝试一下在IBM Bluemix上使用Python语言创建Web应用程序,所以需要在本地搭建Python Web的开发测试环境. 关于Python的版本 进入Python的网站,鼠标移到导航条上 ...
- 搭建Windows下Java Web开发环境
概要 1.SSH开发相关软件及开发包下载2.软件安装及相关设置3.最简单的Web程序 1.软件下载 在D盘建一个目录JavaTools,用来存放下载的软件和开发包.(本教程将使用D盘,你也可以使用 ...
- [转]windows下安装Object-C开发环境
本文转自:http://hi.baidu.com/jeremylai/item/f40b9116cb3c5d582b3e22f5 在Windows下搭建Objective C开发环境,需要到GNUst ...
- pycharm+python+Django之web开发环境的搭建(windows)
转载:https://blog.csdn.net/yjx2323999451/article/details/53200243/ pycharm+python+Django之web开发环境的搭建(wi ...
- [转]MonkeyRunner在Windows下的Eclipse开发环境搭建步骤(兼解决网上Jython配置出错的问题)
MonkeyRunner在Windows下的Eclipse开发环境搭建步骤(兼解决网上Jython配置出错的问题) 网上有一篇shangdong_chu网友写的文章介绍如何在Eclipse上配置M ...
- 转:Windows下的PHP开发环境搭建——PHP线程安全与非线程安全、Apache版本选择,及详解五种运行模式。
原文来自于:http://www.ituring.com.cn/article/128439 Windows下的PHP开发环境搭建——PHP线程安全与非线程安全.Apache版本选择,及详解五种运行模 ...
- Windows下的PHP开发环境搭建——PHP线程安全与非线程安全、Apache版本选择,及详解五种运行模式。
今天为在Windows下建立PHP开发环境,在考虑下载何种PHP版本时,遭遇一些让我困惑的情况,为了解决这些困惑,不出意料地牵扯出更多让我困惑的问题. 为了将这些困惑一网打尽,我花了一下午加一晚上的时 ...
- windows下vue.js开发环境搭建教程
这篇文章主要为大家详细介绍了windows下vue.js开发环境搭建教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 最近,vue.js越来越火.在这样的大浪潮下,我也开始进入vue的学习行列中 ...
- Windows下C,C++开发环境搭建指南
Windows下C,C++开发环境搭建指南 前情提要 基于近一段时间很多网友发邮件反馈,说一些项目编译出现问题,诸如此类的情况. 就觉得很有必要写一篇C,C++开发环境的小指南,统一回复. 1.君欲善 ...
随机推荐
- 深入解析java乱码
1.什么是编码 ,为什么要编码 先前从没有思考这么深入的问题,觉得一切理所当然,直到有一天java的乱码让我跪了,他不在听我的话,到处是乱码,这次我不打算放过它,我要收拾了它. 大家都知道,文本文件, ...
- NSNotification、delegate和KVO的区别
1.效率:delegate比nsnotification高.2. delegate方法比notification更加直接,最典型的特征是,delegate方法往往需要关注返回值, 也就是delegat ...
- Front End Books
Front End Books 记录和推荐一些认为还不错的前端方面的书籍.列入标准: 看过,并觉得值得推荐给大家的. 正在看的,已经觉得不错的,或者听闻别人说不错的. 打算看的,经多人推荐,一致认为必 ...
- linux网络编程学习笔记之四 -----多-threaded服务器
对于使用过程中并发.通过实现更轻量级线程. 每个线程都是一个独立的逻辑流. 主题是CPU在执行调度的最小独立单位,这个过程是资源分配单元.当然,这是在微内核操作系统说.总之,这是唯一的一个操作系统内核 ...
- DB2数据类型
DB2数据库的内置数据类型主要分成数值型(numeric).字符串型(character string).图形字符串(graphic string).二进制字符串型(binary string)或日期 ...
- linux下编译安装mysql5.5以上版本
安装cmake: tar zxvf cmake-2.8.4.tar.gz cd cmake-2.8.4 ./configure --prefix=/usr/local/cmake make & ...
- SQL点滴23—T-SQL中的除法
原文:SQL点滴23-T-SQL中的除法 在T-SQL中没有除法运算,但是在T-SQL中可以实现类似除法的操作Divide.一般除法操作的结果一个列来自于被除关系表,剩下的来自除关系表.这里举一个例子 ...
- Ora创建job定时执行某存储过程
--创建job任务,每天晚上8点执行存储过程:por_postrecords-- declare job number; begin sys.dbms_job.submit(job =>job, ...
- PL/SQL Developer 连接Oracle数据库详细配置方法
PL/SQL Developer 连接Oracle数据库详细配置方法 近段时间很多网友提出监听配置相关问题,客户终端(Client)无法连接服务器端(Server).本文现对监听配置作一简单介绍,给出 ...
- javascript 学习总结(五)Function对象
1.Function 函数调用(类似call方法) function callSomeFunction(someFunction, someArgument){ return someFunctio ...