python+django在linux下搭建比较简单,windows下搭建比较复杂,所以列在下方
一、下载安装
下载django的包,到刚解压后的Django-1.7目录下执行命令 python setup.py install
或者直接在scripts文件夹输入命令pip3 install django
测试Django安装,在目录下新建文件,输入以下文字后运行
#vim: set fileencoding=utf-8 : #测试Django安装 import django print (django.VERSION)
先转到某目录,然后运行django-admin.py startproject MyDjangoSite (若不成功运行django-admin startproject MyDjangoSite )
特别说明:1.执行该命令前必须把 D:\Python34\Lib\site-packages\django\bin 添加值环境变量path下。
2.python文件夹默认打开程序为python.exe。否则会出现执行完程序打开了django-admin.py文件。
即可建立名字为MyDjangoSite 的项目,即网站文件夹
创建成功后到该文件夹下运行:python manage.py runserver
二,链接数据库
在Python2.7时代连接MySql的MySQLdb还不支持Python3.4,可用pymysql来代替
下载插件然后进行安装
在Django中DATABASES的设置也是一样不用做任何修改,跟以前MySQLdb的时候一样,如下所示:
DATABASES = { ‘default‘: { ‘ENGINE‘: ‘django.db.backends.mysql‘, #数据库引擎 ‘NAME‘: ‘test‘, #数据库名 ‘USER‘: ‘root‘, #用户名 ‘PASSWORD‘: ‘root‘, #密码 ‘HOST‘: ‘‘, #数据库主机,默认为localhost ‘PORT‘: ‘‘, #数据库端口,MySQL默认为3306 ‘OPTIONS‘: { ‘autocommit‘: True, }, } }
最关键的一点,在站点的__init__.py文件中,我们添加如下代码:
import pymysql pymysql.install_as_MySQLdb()
做完上述动作后,即可在django中访问mysql了。
三、在多版本电脑上运行django
如果系统同时装了python2和python3,在运行django时,无论path加了什么,都会运行pyhton2的版本,所以在跑runserver前,要进入Python2的安装目录,把python.exe改名为python2.exe
五、报错处理
有时会有****python manage.py migrate***之类的提示,直接输入python manage.py migrate这个命令再启动服务器即可,该命令用于重构网站
六、创建应用
另开cmd,cd到项目的文件夹下,执行python manage.py startapp views(app名称可自己定)若失败,可将.py略去,然后你拥有了一个views为名称的应用文件夹,具体页面可放应用里,比如首页
七、创建首页
在settings.py文件里填写入刚才创建的app的名称(无论是网页还是客户端,都叫app),注意看一下路径,在同文件夹下的话,直接app名称就好,不需要在写其他路径
INSTALLED_APPS = ( ‘django.contrib.admin‘, ‘django.contrib.auth‘, ‘django.contrib.contenttypes‘, ‘django.contrib.sessions‘, ‘django.contrib.messages‘, ‘django.contrib.staticfiles‘, ‘views‘, )
打开app存放的文件夹,models.py里写几句话(直接用默认的model也可以),比如
from django.db import models # Create your models here. class Test(models.Model): testField = models.TextField()
再建立第一张测试页面
在app文件夹下的views.py(名字可以任意)编写例子核心代码:
from django.shortcuts import render,render_to_response from django.http import HttpResponse # Create your views here. def hello(request): return HttpResponse("我是django的第一个例子!")
如果用中文报错,先将中文替换成英文测试
如果英文显示正常,中文无法输出,报错如下:
UnicodeDecodeError: ‘utf8‘ codec can‘t decode byte 0xb2 in position 0: invalid start byte
这种问题一般发生在windows系统上,是系统默认的字符与python默认的字符集utf8不一致造成的。解决的方法很简单,用editplus或notepad++之类的编辑器打开views.py文件,然后另存为一模一样的名称,只是字符集设定为utf8,保存后刷新页面。大功告成。
下一步在urls.py里面绑定映射关系:
from django.conf.urls import patterns, include, url from django.contrib import admin #导入view定义的方法 from views import hello(注意views的路径,可能需要加上级文件夹名称) #views这个名称用在此处 urlpatterns = patterns(‘‘, # Examples: # url(r‘^$‘, ‘Django项目.views.home‘, name=‘home‘), # url(r‘^blog/‘, include(‘blog.urls‘)), url(r‘^admin/‘, include(admin.site.urls)), #基于hellword的绑定 url(r‘^hello/$‘,hello), url(r‘^myhtml/$‘,myhtml), url(r‘^cc/$‘,bb), )
然后在浏览器里输入指定地址和页面名称即可,这里的绑定页面是hello,所以页面地址是hello