1. 程式人生 > 其它 >python + django 搭建網頁

python + django 搭建網頁

1. 動機

申請了一個小教學專案,專案目標裡寫了要建設課程網站,現在看來這專案估計要批下來了(雖然沒有錢),所以需要開始考慮網站建設的事了。
網上搜了一下,貌似 python 可以直接寫,但是會麻煩一點,另外很多人推薦 django,似乎後面還需要學點資料庫(頭疼),可能還需要 css (貌似是網頁排版的東西,頭疼x2),甚至還有人說要學 javascript (頭疼x3)。
那好吧,先從 django 的嘗試開始吧,網上搜了一個教程:http://djangobook.py3k.cn/2.0/
這個教程只適用於 python2.x,不適合 python3以上。先試著再說吧。
不怕嚇壞自己,專案目標中的課程網站要求:

  • 分享教學資料(老子可以做成網頁夾敘夾議那種)
  • 展示課程內容相關的圖表、動圖(這也可以放在上面說的網頁內容中間)
  • 嘗試網站互動,也就是有些網頁可以讓使用者點點點線上擬合畫圖之類。

第三點可能也是最難的,網上說,不帶程式互動的是靜態網頁,好弄,帶程式互動的是動態網頁,難點。

2. 第一次嘗試

這個教程一共有tm二十章,還好一章不算長,看了第一章,啥都沒記住,只知道 django 是個做網頁的工具,而且據說挺好的。
第二章是安裝和上手。首先,我的 ubuntu 好像自帶 python,需要安裝 django,我 apt search 了一下,發現可以這樣安裝:

sudo apt-get install python-django

另外我還發現有 python3-django,不過既然這個教程是 python2.x 的,就先弄 python-django 吧。也可能教程比較老,python3 已經相容了這些也有可能,後面再說吧。
安裝好以後,在 python 裡可以 import django 模組了,還可以看看版本

Python 2.7.17 (default, Feb 27 2021, 15:10:58) 
[GCC 7.5.0] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import django
>>> django.VERSION
(1, 11, 11, u'final', 0)

然後他說需要安裝資料庫(土撥鼠:啊!!!),還好他又說,如果只是玩一次,用 SQLite 就行,而且 python2.5 以上版本不需要安裝資料庫。OK,很好。
開始一個專案,新建 /home/luyi/djcode/,然後進入該目錄

django-admin startproject mysite

自動生成了mysite 目錄,然後

python manage.py runserver

就在本機上8000埠啟動了本地伺服器,網頁瀏覽器訪問 http://127.0.0.1:8000/
就會看到

Yay! 會做網頁了。