Django:(1) 環(huán)境準備與HelloWorld

虛環(huán)境準備

參考: Ubuntu中安裝Python3和virtualenv


初始化Django項目

  • 進入虛環(huán)境
mkdir myproject
cd myproject
virtualenv venv -p python3
source venv/bin/activate
  • 安裝Django
pip install django
  • 初始化項目
django-admin startproject myproject
cd myproject
django-admin startapp boards

Hello World!

  • 編輯配置
    在myproject/settings.py中找到INSTALLED_APPS
INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',

    'boards',  # 譯者注:建議和作者一樣空一行來區(qū)別內置app和自定義的app
]
  • 編輯視圖
    打開boards/views.py
from django.shortcuts import render

# Create your views here.
from django.http import HttpResponse

def home(req):
    return HttpResponse('Hello World!')
  • 編輯url
    打開myproject/url.py
from django.contrib import admin
from django.urls import path

from boards import views

urlpatterns = [
    path('', views.home, name='home'),
    path('admin/', admin.site.urls),
]
  • 啟動服務器
    python manage.py runserver

  • 本地驗證
    curl -i -k localhost:8000/;echo

輸出:

HTTP/1.1 200 OK
Date: Mon, 02 Apr 2018 15:38:45 GMT
Server: WSGIServer/0.2 CPython/3.6.5
Content-Type: text/html; charset=utf-8
X-Frame-Options: SAMEORIGIN
Content-Length: 12

Hello World!

大功告成~


目錄結構說明

myproject/
 |-- myproject/
 |    |-- boards/                <-- 我們新的Django應用(app)!
 |    |    |-- migrations/
 |    |    |    +-- __init__.py
 |    |    |-- __init__.py
 |    |    |-- admin.py
 |    |    |-- apps.py
 |    |    |-- models.py
 |    |    |-- tests.py
 |    |    +-- views.py
 |    |-- myproject/
 |    |    |-- __init__.py
 |    |    |-- settings.py
 |    |    |-- urls.py
 |    |    |-- wsgi.py
 |    +-- manage.py
 +-- venv/
  • myproject:

    • manage.py:使用django-admin命令行工具的快捷方式。它用于運行與我們項目相關的管理命令。我們將使用它來運行開發(fā)服務器,運行測試,創(chuàng)建遷移等等。
    • init.py:這個空文件告訴python這個文件夾是一個python包。
    • settings.py:這個文件包含了所有的項目配置。將來我們會一直提到這個文件!
    • urls.py:這個文件負責映射我們項目中的路由和路徑。例如,如果你想在訪問URL / about/ 時顯示某些內容,則必須先在這里做映射關系。
    • wsgi.py:該文件是用于部署的簡單網(wǎng)關接口。你可以暫且先不用關心她的內容,就先讓他在那里就好了。
  • boards:

    • migrations/:在這個文件夾里,Django會存儲一些文件以跟蹤你在models.py文件中創(chuàng)建的變更,用來保持數(shù)據(jù)庫和models.py的同步。
    • admin.py:這個文件為一個django內置的應用程序Django Admin的配置文件。
    • apps.py:這是應用程序本身的配置文件。
    • models.py:這里是我們定義Web應用程序數(shù)據(jù)實例的地方。models會由Django自動轉換為數(shù)據(jù)庫表。
    • tests.py:這個文件用來寫當前應用程序的單元測試。
    • views.py:這是我們處理Web應用程序請求(request)/響應(resopnse)周期的文件。

停止服務器 退出虛環(huán)境

  • 停止服務器
    control + c
  • 退出虛環(huán)境
    deactivate

參考文獻

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容