Web服务器网关接口(PythonWeb Server Gateway Interface,缩写为WSGI):是Python应用程序或框架和Web服务器之间的一种接口
安装django时,会两个版本django共存的问题:当应用A需要django1.2而应用B需要django1.3,在一套python环境下,会出现两次调用django的情况,因此需要创建一套独立的python虚拟环境以区分,解决方法如下:
安装virtualenv:
管理员权限进行安装,命令:
(sudo) pip install virtualenv
这步完成后,以后就可以进接使用virtualenv来进行Python开发环境的创建了。
1.环境创建
创建mysite目录后,cd到mysite目录下,然后:
[wyatt@wyatt hg]$ virtualenv mysite(在哪个目录下运行virtualenv env_name就会在哪个目录下创建一个名为env_name的文件夹,里面会有一个私有的python解释器副本)
New python executable in mysite/bin/python
Installing setuptools............done.
Installing pip...............done.
这时会在mysite目录中生成三个Python所需的目录。
2.启用虚拟环境
进入mysite目录,执行:
source bin/activate
这里你会发现原来的命令提示符发生了变化,多了一个括号,里面的字符即为你所创建的虚拟环境的名称。接下来的所有模块的安装,都只会直接安装到项目目录中去。
3.安装Django
使用PIP进行Django的安装,命令:
pip install django
安装完成后即可进行项目的开发工作了。
(PIP有一个很不错的功能,可使用该功能来自己生成项目安装的扩展,而其他用户在使用你的应用的时候,也可以方便的通过这种方式,完成扩展的再次安装。)
1.扩展生成:
pip freeze > prj.txt
会在当前目录中生成这样一个文本文件,包含扩展名及相应的版本号。
2.安装
pip install -r prj.txt
自动装所有模块一次些安装完成。
需要注意的是,你每次开始继续开发项目的时候,都需要使用source进入到虚拟环境后才可以正确的进行项目的开发
如果安装环境不出现版本冲突,可以直接安装django
在Eclipse下进行Django开发:
运行Django,因为需要已安装django(现在的高版本pydev自带有pydevdjango project不用安装),可用Eclispe创建django工程,manage.py所在的目录,运行pythonmanage.py runserver可以看到运行服务器及其地址(pythonmanage.py可以查看这个管理器的所有相关命令),settings,urls,wsgi三个文件,wsgi是python应用或框架(django)与web服务器(如apache)的接口(服务器真正上线的时候要用)。
常用命令:migrate,makemigrations,shell,runserver。
django应用:
1python manager.py startapp app_name(创建应用),会生成一个目录app_name
2在setting.py中添加应用INSTALLED_APPS
3应用目录下的文件:view函数返回一个html页面给用户,models定义数据库中的表,admin给admin应用使用,管理数据库后台。migrations文件夹储存数据库更改,test用于测试。
Django中一次运行的简单流程:
点击url->查表urls->从views中响应相应的函数->函数内部:创建html templates,从数据库中获取相应数据,提交数据给templates(2步),HttpResponse()返回templates(html)。