iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 27
0

今天來寫訂閱服務,類似電子報這樣,可以每天定時根據訂閱內容定時寄天氣預報PDF。

先建table ,取一個叫 WeatherSubscribe,欄位有要寄送的email和所選的行政區list,因為是存list,查了一下,有ArrayField,就用這個吧。

main/models.py ,建資料庫表格都寫在這個檔案

from django.contrib.postgres.fields import ArrayField

class WeatherSubscribe(models.Model):
    email = models.EmailField()
    districts = ArrayField(models.CharField(max_length=200))

    def __str__(self):
        return self.email

寫完要執行makemigrations指令

(venv) $ python manage.py makemigrations 

就會看到在main/migrations/ 底下,會看到多了00 開頭的檔案

再來執行 migrate,依據00開頭檔案,建立表格

(venv) $ python manage.py migrate

這樣就建立好了也加上admin.py,django 有預設的管理後台,可以更直覺的看資料有沒有建立成功,算是滿好用的,也可以客製化查詢界面等等。
main/admin.py

from main.models import WeatherSubscribe

admin.site.register(WeatherSubscribe)

還要建管理者帳號,要下指令

(venv) $ python manage.py createsuperuser

照著他給的打,先打帳號,Email,密碼,就建立好了

在網頁上輸入 http://localhost:8000/admin/

打上剛剛建立的管理者帳號,就可以登入後台。

管理後台

參考資料:

如果有任何寫得不好的地方,請跟我說,謝謝。


上一篇
[Day 26] PostgreSQL
下一篇
[Day 28] 訂閱(2)
系列文
用 Python 玩 PDF,結合Django 變成一個網頁系統30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言