Python Web编程(二)
第一篇介绍了一下mod-python这个很基本的Python下的Web框架,毕竟在这个框架下面写代码需要自己手动写很多东西,
下面就介绍一个基于mod-python的Web框架--Django。
这个框架在当前的应用还是相当广泛的,比起Zope和Plone显得不是很复杂,学习曲线也比较低。
好的,上一篇里面已经安装过了Apache和mod-python了,这一篇里还需要安装另外的东西。
数据库,我的选择是MySql这个开源的数据库,我们还需要另外一个模块--MySqlDb,这是一个Python模块。
然后去http://www.djangoproject.com/download/下载一个最新的版本,现在的版本是Django-0.96。
下载回来执行python setup.py install,它就会把Django安装到site-package下面。
安装就到此为止。
为了方便使用,可以在Path下面追加一项:Python25\Scripts,这样就可以在任一目录下利用django-admin.py命令了。
在上一篇的PythonWeb目录下面执行django-admin.py startproject test1,它会在这个目录下面建一个test1的目录,
并且有四个文件__init__.py,manage.py,settings.py和urls.py。
其中__init__.py是一个空文件,目的就是标志这是一个Python包。
manage.py提供了一些命令用来操作Django。
settings.py提供了一些可以配置的环境,例如数据库等。
urls.py用来匹配URL。
大概了解以上几个文件以后,就可以配置Apache了。
还是修改Apache的配置文件Apache2.2\conf\httpd.conf。
把上一节中的Directory修改成如下内容:
<Directory "D:\PythonWeb">
AddHandler mod_python .py
SetHandler python-program
PythonHandler django.core.handlers.modpython
SetEnv DJANGO_SETTINGS_MODULE test1.settings
PythonDebug On
PythonPath "[r'D:\PythonWeb'] + sys.path"
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
注意红色的部分是新加的内容,就是不说大家也可以猜出来是什么意思。
随便写一个简单的模块helloworld.py:
from django.http import HttpResponse
def index(request):
return HttpResponse('Hello, World!')
然后修改urls.py:
from django.conf.urls.defaults import *
urlpatterns = patterns('',
(r'^test1/', 'test1.helloworld.index'),
)
好了,一切就绪,http://localhost/test1/,试一下好使了吗?
以上内容参考了http://www.djangoproject.com/documentation/modpython/。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构