###### tags: `django`
# django入門(三) — 簡單範例(1)-建立app
## IT邦連結(需使用電腦版瀏覽器):[點我前往](https://ithelp.ithome.com.tw/users/20145754/articles)
全部文章:
[django入門(一) — 介紹與設定開發環境](https://hackmd.io/@aroncode/SkVeqBO2K)
[django入門(二) — 建立資料庫與專案](https://hackmd.io/@aroncode/rkqgL_unY)
[django入門(三) — 簡單範例(1)-建立app](https://hackmd.io/@aroncode/H1qirFdhF)
[django入門(四) — 簡單範例(2)-範本與範本繼承](https://hackmd.io/@aroncode/rkFuiwKnY)
[django入門(五) — 簡單範例(3)-靜態檔](https://hackmd.io/@aroncode/ByL4dFO2Y)
[django入門(六) — 資料模型與填充程式](https://hackmd.io/@aroncode/BJot2iRnF)
[django入門(七) — Django ORM操作](https://hackmd.io/@aroncode/SJec_hA3Y)
# 簡單範例
利用實作一個簡單的網站,邊做邊說明django的各個部分,通過實作能夠更快了解django。
# 新增一個main app
按照下方步驟新增,新增後Refresh即可以看到新增的app。
```
main app:右鍵點擊 project → Django → Create Application → Name: main → OK
```
demo/settings.py裡面的INSTALLED_APPS新增一個'main'
```
INSTALLED_APPS = [
...
'django.contrib.staticfiles',
'main',
]
```
# 練習第一個函式
main/views.py
```
from django.http import HttpResponse
def main(request):
return HttpResponse('Hello world! 這是首頁~')
```
寫好一個函式後,我們需要到demo/urls.py設定url mapping。
demo/urls.py
```
from django.contrib import admin
from django.urls import path, include, re_path
from main import views
urlpatterns = [
path('admin/', admin.site.urls),
path('main/', include('main.urls', namespace='main')),
re_path('.*', views.main),
]
```
* path('main/', include('main.urls', namespace='main')):一開始URL為main/,則會進一步比對main.urls內的路徑。
* re_path('.*', views.main):當所有URL匹配失敗的話,都是由main的views.main處理,也就是會被導向首頁。
接著也要在main app下建立urls.py
右鍵點main → New → File → File name: urls.py → Finish
```
from django.urls import path
from main import views
app_name = 'main'
urlpatterns = [
path('', views.main, name='main'),
]
```
# 測試
我們完成了第一個函式也規劃相關的URL路徑,接著我們啟動專案。
瀏覽器輸入:http://127.0.0.1:8000/main/
可以看到網頁上顯示 Hello world! 這是首頁~