想法由来
这个想法在前两年就一直萦绕在我脑海,但是呢一直也没有搭起来。昨天晚上,上了Quora,看到了这个回答,虽然一直知道利用项目来带动学习Python会更快,但一直都只是做了开始。这次就记录下来这个过程。
环境的搭建
今天顺着教程,搭建好开发环境。现在是系统里面已经安装好Python2.7 和PIP,并且也安装好virtuaenv。着手创建一个virtualenv环境:
virtualenv website_building
激活该环境并安装好Django1.7
source ./bin/activate
pip install Django==1.7
并在该环境中部署了Git,重温了Git。从我的远程仓库克隆到本地,以托管我的代码。
git clone https://.....
git config --global user.name "John"
git config --global user.email "XXX@XXX.com"
下面就开始正式按照教程学习了:
- 创建Project
- 创建一个应用(Application)
- 在应用中开始创建视图(View)
- Mapping URLs
1.创建Project
$ django-admin.py startproject tango_with_django_project
运行该命令会在现有的工作空间下创建一个名为tango_with_django_project
的文件夹,里面包括一个名为tango_with_django_project
的配置文件夹和一个manage.py
脚本。
在配置文件夹下又有:
- __init__.py
-settings.py
- urls.py
- wsgi.py
2.创建一个应用(Application)
进入tango_with_django_project
文件夹,运行命令:
$ python manage.py startapp rango
这会在工程文件夹下创建一个名为rango的应用。这时候就需要通过工程配置文件夹下的settings.py
脚本告诉Django这个应用的存在。
INSTALLED_APPS = (
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'rango',
)
3.在应用中开始创建视图(View)
在rango文件夹下的views.py
创建一个视图函数,这是最简单的一个示例:
from django.http import HttpResponse
def index(request):
return HttpResponse("Rango says hey there world!")
4.Mapping URLs
from django.conf.urls import patterns, url
from rango import views
urlpatterns = patterns('',
url(r'^$', views.index, name='index'))
而后,打开配置文件夹下的settings.py
,更新urlpatterns
:
urlpatterns = patterns('',
# Examples:
# url(r'^$', 'tango_with_django_project_17.views.home', name='home'),
# url(r'^blog/', include('blog.urls')),
url(r'^admin/', include(admin.site.urls)),
url(r'^rango/', include('rango.urls')), # ADD THIS NEW TUPLE!
)
至此,就完成了一个最简单的应用部署。运行
$ python manage.py runserver
在浏览器地址栏输入http://127.0.0.1:8000/ 即可观看成果。