Django學習筆記(1)-建立專案,HelloWord!
距離上次寫Python已經是八年前了吧…大學的時候寫的:P
最近想重新溫習一下,就直接挑最火紅的Django框架+Python3來試試看~
順便作一下筆記
安裝Django
pip3 install Django==2.1.3
更改預設指令
$> vi ~/.bash_profile
alias python='/usr/local/bin/python3'
alias pip='/Library/Frameworks/Python.framework/Versions/3.7/bin/pip3'
$> source ~/.bash_profile
建立django-admin的捷徑
ln -s /Library/Frameworks/Python.framework/Versions/3.7/bin/django-admin /usr/local/bin
在安裝好Python與Django的狀況下,可以透過 django-admin.py 或是 django-admin 來建立起專案
django-admin startproject HelloWorld
進入專案資料夾中,建立起伺服器(預設值為127.0.0.1:8000)
python manage.py runserver 127.0.0.1:8000
接著在瀏覽器上直接訪問就可以看到預設好的首頁了!
接著寫一個HelloWord來試試~先建立一下首頁用的檔案
$> cd HelloWorld
$> mkdir controllers
$> index.py
然後在 index.py 建立一個我們要用的函數
# -*- coding: utf-8 -*-
from django.shortcuts import render
def index(request):
view_data = {}
view_data['hello'] = 'Hello World!'
return render(request, 'index.html', view_data)
接著建立一下要用的view
$> mkdir views
$> index.html
把要顯示的首頁給做好~預計傳一個叫做hello的參數給view
<!DOCTYPE html>
<html lang="en">
<head>
<meta
http-equiv="Content-Type"
content="text/html; charset=UTF-8"
>
<meta
name="viewport"
content="width=device-width,initial-scale=1"
>
<title>Python First!</title>
<meta
name="description"
content=""
>
</head>
<body>
<!-- hexo顯示上BUG的關係需將X刪除 -->
<h1>{{ hello }X}</h1>
</body>
</html>
在controller跟view都搞定後~接著就是告訴django我的controller跟view的位子了~來修改一下 urls.py
from django.contrib import admin
from django.urls import path
from .controllers import index "這裡把controller引進來"
urlpatterns = [
path('admin/', admin.site.urls),
path(r'^$', index.index), "這裡加上哪個controller裡的哪個函數"
]
再來修改 settings.py 中的 TEMPLATES 定義
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [BASE_DIR+"/HelloWorld/views",], "這裡放上view的路徑"
'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',
],
},
},
]
接著執行後就完成了!搞定~