由于个人兴趣的原因,自学了半个多月的Python,然后近些天突发奇想,打算做一个小网站,本来打算是用PHP的,但是当我画出我的MySQL设计图之后改变了决定,用Python来写网站,问题出来了,我并没有任何关于python制作网站的经验,也就是完全的新手,但是我还是打算用框架来写网站,在搜索了一番决定用Django来入门建立我的一个小网站。
我通过教程来一步一步搭建环境,然后进行操作,但是事情不是我想的一样,最新的Django框架和现在许多书上的已经由一点点区别了,搞了一番以后才可以正常的进行,于是,我打算来记录下这个开端,关于现在新的Django1.4.3框架结构的说明:
(1)开始准备:
1、确定你有2.5以上的python,如果你使用Mysql,请安装python-mysql的包。
2、在Django的官网上下载相应的包并安装。
这样你就可以进行下面步骤了。
(2)生成项目:
在命令行中到达你想要的目录下输入
- django-admin startproject web
其中WEB是你生成的项目名称。
这样你就在该目录下生成了你的项目,那么看看里面有什么吧!
web/
web/
__init__.py
wsgi.py
settings.py
urls.py
manage.py
文件说明如下:
web:与项目同名的文件里面定义了一个项目基本的初始化配件
_init__.py:定义模块文件,空的。
settings.py:设置Django框架的相关内容。
urls.py:URL的相关设置,用来定位。
wsgi.py:定义服务器的应用接口。
manage.py:一个管理工具,可以通过命令行来管理这个项目。
(3)生成应用:
所为应用,在我个人的理解就是一个模块功能,实现什么什么功能,现在在web/web目录下输入
- django-admin startapp hello
这样你就生成了一个名为HelloWorld的应用,但是这里要注意一下,应用可以不用在这个目录,也可以在web目录下,但是为了方便理解,我还是放在了web/web下。
在hello文件夹下,有如下文件:
__init__.py:同样定义模块
models.py:定义数据模型用
tests.py:测试用
views.py:定义视图,处理使用
这样你的框架已经完成,下面来使用构造你的Hello World!
(1)编辑views.py代码,输入
- from django.http import HttpResponse
- def hello(request):
- return HttpResponse("Hello,World!")
(2)编辑urls.py代码,如下
- from django.conf.urls.defaults import patterns, include, url
- from web.views import hello
- # Uncomment the next two lines to enable the admin:
- # from django.contrib import admin
- # admin.autodiscover()
- urlpatterns = patterns('',
- # Examples:
- # url(r'^$', 'depot.views.home', name='home'),
- # url(r'^depot/', include('depot.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)),
- )
- urlpatterns += patterns ('',
- (r'^hello/', hello),
- )
(3)在manage.py目录,下输入
- ./manage.py runserver
这样测试的服务器启动,记住开始以后不需要每次变更文件后启动一下。
(4)在你的浏览器地址栏输入http://localhost:8000/hello
这样你就能看到你想要的Hello World了。
注意:以后会有那个关系很绕的情况,在指定应用的时候,到底那个目录是怎样的。拿该项目举例在web/web下的应用,都是web.开头,如果在web下,直接就是该应用的名称。