python學習筆記(1) 模仿建站1

前言:本文學習Vamei (博客地址http://www.cnblogs.com/vamei )的被解救的姜戈系列:01初試天涯html

因爲此教程時間比較久遠,軟件版本,開發環境的不一樣,致使自學過程當中,運行程序出現問題,因此纔有了本系列的讀書筆記。因爲本人是菜鳥,不免裏面會有錯誤,歡迎指正,理性討論,謝謝!python

這裏首先提示本人運行環境,系統是windows10專業版,python版本是3.5.2,Django版本是1.10.4(默認pip安裝不指定版本號,通常是最新版)django

正文:windows

一、安裝Django瀏覽器

先查看是否默認安裝過服務器

import django
print(django.VERSION)

若是安裝過,會顯示版本號session

(1, 10, 4, 'final', 0)

未安裝會有錯誤,能夠按照下面步驟安裝,注意這裏是在windows10的DOS下輸入,win+R,再輸入CMD能夠調出app

pip install django

會開始鏈接,有進度條開始下載並安裝,若是須要指定django版本號,能夠這麼輸入模塊化

pip install Django==1.8.16

相關django的內容能夠查看教程 http://www.ziqiangxuetang.com/django/django-install.html函數

二、啓動django

首先在DOS界面進入須要搭建網站的目錄,這裏根據教程,輸入以下命令,在H盤創建mysite文件夾

H:\>django-admin.py startproject mysite

查看H盤就自動新建mysite文件夾,其目錄以下

進入mysite文件夾,啓動服務器,這裏根據教程設置端口8000

H:\mysite>py manage.py runserver 8000

 這個提示就是成功創建了簡單的網站,在瀏覽器輸入http://127.0.0.1:8000

這樣網站就算簡單搭建成功,固然咱們還須要一些內容

三、創建第一個網頁

這裏根據教程,首先須要修改mysite/mysite下的urls.py設定,讓它知道網頁所在吧

打開urls.py,你會看到以下代碼:

"""mysite URL Configuration

The `urlpatterns` list routes URLs to views. For more information please see:
    https://docs.djangoproject.com/en/1.10/topics/http/urls/
Examples:
Function views
    1. Add an import:  from my_app import views
    2. Add a URL to urlpatterns:  url(r'^$', views.home, name='home')
Class-based views
    1. Add an import:  from other_app.views import Home
    2. Add a URL to urlpatterns:  url(r'^$', Home.as_view(), name='home')
Including another URLconf
    1. Import the include() function: from django.conf.urls import url, include
    2. Add a URL to urlpatterns:  url(r'^blog/', include('blog.urls'))
"""
from django.conf.urls import url
from django.contrib import admin

urlpatterns = [
    url(r'^admin/', admin.site.urls),
]

根據其中Example,結合教程,修改以下

from django.conf.urls import url
from django.contrib import admin
from mysite import views

urlpatterns = [
  url(r'^admin/', admin.site.urls),
  url(r'^$',views.first_page),
]

注意這裏插入了from mysite import views,再看到裏面views.first_page,這個就是咱們須要創建的網頁,如今咱們就創建它,咱們在mysite/mysite下建立views.py,並在其中定義first_page函數

# -*- coding:utf-8 -*-

from django.http import HttpResponse

def first_page(request):
    return HttpResponse("<p>世界好</p>")

第一行說明字符編碼爲utf-8,爲下面使用中文作準備。first_page函數的功能,是返回http回覆,即這裏的<p>世界好</p>。first_page有一個參數request,該參數包含有請求的具體信息,好比請求的類型等,這裏並無用到。

四、增長app

根據本人目前理解是增長網頁二級目錄功能,繼續跟着教程

一個網站可能有多個功能。咱們能夠在Django下,以app爲單位,模塊化的管理,而不是將全部的東西都丟到一個文件夾中。在mysite下,運行manange.py,建立新的app:

先ctrl+Break,退出原來創建的網頁服務器,再在DOS下輸入

py manage.py startapp west

因而在mysite目錄下新建了west目錄,裏面包含了一些py

咱們還須要修改項目設置,說明咱們要使用west。在mysite/setting.py中,在INSTALLED_APPS中,增長"west":

打開mysite\mysite目錄下的settings.py,按照以下修改

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'west',
]

就是插入了'west',,這個語句。

能夠看到,除了新增長的west,Django已經默認加載了一些功能性的app,好比用戶驗證、會話管理、顯示靜態文件等。咱們將在之後講解它們的用途。

五、增長app頁面

咱們下面爲APP增長首頁。咱們以前是在mysite/urls.py中設置的URL訪問對象。依然採用相似的方式設置。

另外一方面,爲了去耦合,實現模塊化,咱們應該在west/urls.py中設置URL訪問對象。具體以下:

和第3點相似的方法

再次修改mysite/urls.py

from django.conf.urls import url
from django.contrib import admin
from mysite import views

urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'^$',views.first_page),
    url(r'^west/',include('west.urls')),
]

再次增長了一行,注意west後面的/這裏,咱們提醒指揮員,對於west/的訪問,要參考west/urls.py。

隨後,咱們建立west/urls.py,添加內容:

from django.conf.urls import url, include
from west import views

urlpatterns = [
    url(r'^$',views.first_page),

]

 

注意第一句和教程不同,其中url和include順序就是如此,第二句必須增長,代表views位置導入,」urlpatterns = [ 」 這裏沒有patterns,views.first_page沒有前綴west。

最後,在west下,修改views.py爲:

 

from django.shortcuts import render

# Create your views here.
# -*- coding: utf-8 -*-

from django.http import HttpResponse

def first_page(request):
    return HttpResponse("<p>西餐</p>")

 

 

 

 

注意與教程程序的區別。

訪問http://127.0.0.1:8000/west,查看效果。

頁面應該顯示 西餐

六、總結

注意因爲Django版本的區別,致使使用方法的不一樣。

相關文章
相關標籤/搜索