1. 程式人生 > >Django開發環境搭建

Django開發環境搭建

code 默認 process init load 下載 ken shee min

1、軟件安裝

Python下載地址:https://www.python.org/

如果安裝windows環境的python記得配置一下環境變量

Django下載地址:https://www.djangoproject.com/download/

安裝方法:解壓後,進入命令行,切換到解壓後的django目錄下執行python setup.py install,如果中間有報錯的話,根據報錯信息解決。

驗證:安裝完成後在命令行執行python進入python交互界面.(windows環境需要單獨再配置一下django的環境變量)

asherdeiMac:~ asher$ python
Python 2.7.10 (default, Feb  7 2017, 00:08:15) 
[GCC 
4.2.1 Compatible Apple LLVM 8.0.0 (clang-800.0.34)] on darwin Type "help", "copyright", "credits" or "license" for more information. >>> import django >>> django.VERSION (1, 11, 4, ufinal, 0)

這裏需要註意一下python和django的版本對應關系

技術分享圖片

2、生成項目

asherdeiMac:~ asher$ django-admin startproject test

執行完這個語句就會在命令行當前目錄下生成一個名為test的項目

asherdeiMac:~ asher$ django-admin runserver test
或者
asherdeiMac:~ asher$ django-admin runserver test 0.0.0.0:8000
或者
asherdeiMac:~ asher$ django-admin runserver test 8000
或者
asherdeiMac:~ asher$ django-admin runserver test ip:8000

這樣就能啟動這個項目,在瀏覽器中輸入localhost:8000就能訪問

3、配置項目

進入test\test目錄下找到默認只有如下幾個文件

__init__.py
settings.py
urls.py
wsgi.py

4、頁面跳轉的配置

首先需要在settings.py這個文件裏找到下面這段

TEMPLATES = [
    {
        BACKEND: django.template.backends.django.DjangoTemplates,
        DIRS: [os.path.join(BASE_DIR + "/templates")],#中括號裏面原來是空的,需要加上這一句
        APP_DIRS: True,
        OPTIONS: {
            context_processors: [
                django.template.context_processors.debug,
                django.template.context_processors.request,
                django.contrib.auth.context_processors.auth,
                django.contrib.messages.context_processors.messages,
            ],
        },
    },
]

然後在test目錄下創建templates目錄,這樣test目錄下就有了3個文件和文件夾

manage.py
templates
test

在templates目錄下新建一個html文件,

<!DOCTYPE html>
<head>
    <title>{{page_title}}</title>
</head>
<body>
    my first django
</body>
</html>

在test\test目錄下創建一個view.py的文件

#-*- coding:utf-8 -*-
from django.shortcuts import render

def index(request):
    params = {}
    params[page_title] = 首頁
    return render(request,templates/index.html,params)

配置一下url.py

from django.conf.urls import url
from . import view

urlpatterns = [
    url(r^index/, view.index),
]

這樣就可以請求鏈接後直接訪問html頁面了。

5、引用靜態文件

通常情況下我們在渲染頁面的時候需要用到css、js、img等文件,為了讓頁面能找到這些靜態文件,我們需要配置一下settings.py這個文件:

在文件中找到STATIC_URL這個參數,在這個參數下面加一段代碼

STATIC_URL = /static/
STATICFILES_DIRS = [
    os.path.join(BASE_DIR, "templates")
]

這樣就可以在html文件中引用保存在templates目錄下的靜態文件,有兩種引用方式

<link href="/static/bootstrap/css/bootstrap.min.css" rel="stylesheet">
或者
{%load static%}--這一項只要在頁面開始申明一次就行
<link href="{% static ‘bootstrap/css/bootstrap.min.css‘%}" rel="stylesheet">

這兩種方式我推薦使用第二種方式,因為如果你更改STATIC_URL = ‘/static/‘這個參數的值的話,用第一種方式就要修正所有html文件,非常麻煩而且容易出錯。

setting.py配置:

ALLOWED_HOSTS = []#這個配置是防止HTTP主機頭部攻擊,值“*”匹配任何地址,當DEBUG為True並且ALLOWED_HOSTS為空時,主機將針對[‘localhost‘,‘127.0.0.1‘,‘[:: 1]‘]進行驗證

Django開發環境搭建