在Django项目的创建中,可以看到启动manage.py后,在浏览器中输入http://127.0.0.1:8000,就可以看到It worked!,那么这个过程是怎么实现的了?在Diango中,它自带了独立的服务器,即框架就是服务,不需要额外的服务器,Django框架中,有一个轻量级,内建的服务器,有了这个服务器,在开发的环境模式下,就不需要额外的apache等web容器了,启动的方式是:manage.py runserver。
这里我们写一个简单的例子,就是在网页中打印出Hello World这句话,首先我们创建app,app是什么了?它是Django项目中的一个独立的应用,创建app的命令为:
python manage.py blog
见创建的截图:
无任何的错误提示,表示创建app成功,在pycharm中可以看到一个blog的app应用,见截图:
下来来实现一个,访问http://127.0.0.1:8000/blog/index/,打印出Hello orld的案例,
拷贝webSite下的urls..py文件,复制到blog的目录下(先不要问为什么),复制成功后,下面按顺序来依次实现
我们想要的效果,写出第一个Django的应用程序。
1、打开blog下的views.py文件,写入如下的代码,见源码:
#!/usr/bin/env python
#coding:utf-8
from django.shortcuts import render
from django.http import HttpResponse
# Create your views here.
def index(request):
return HttpResponse('<center><h3>Hello World</h3></center>')
2、在webSite目录下的urls.py文件中添加blog映射,也就是分发,见修改后的文件:
#!/usr/bin/env python
#coding:utf-8
from django.conf.urls import url,include,patterns
from django.contrib import admin
urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^blog/',include('blog.urls',namespace='blog')),
]
3、修改blog目录下的urls.py文件,把index视图添加到url中,见源码:
#!/usr/bin/env python
#coding:utf-8
from django.conf.urls import url
from .views import *
urlpatterns = [
url(r'^index/$', index),
]
4、把blog加入到INSTALLED_APPS中,打开webSite目录下的settings.py文件,在INSTALLED_APPS
中加入blog,见源码:
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'blog',
]
5、启动开发服务器,也就是python manage.py runserver
6、在浏览器中输入http://127.0.0.1:8000/blog/index,可见到如下的截图,表示ok,见截图:
关于这个实现的过程,在Django_中文教程中已经有了很详细的解释,这里直接复制过来,不再重复。见原文的说明:
1. 进来的请求转入/hello/. 2. Django通过在ROOT_URLCONF配置来决定根URLconf. 3. Django在URLconf中的所有URL模式中,查找第一个匹配/hello/的条目。 4. 如果找到匹配,将调用相应的视图函数 5. 视图函数返回一个HttpResponse 6. Django转换HttpResponse为一个适合的HTTP response, 以Web page显示出来