1. 時區
django在settings.py裏面有一個設置時區的地方。這時候如果客戶端和服務器端進行數據交換的時候時間格式中沒有帶有時區信息,那麼django將默認使用settings.py中設置的時區代替。這在編程進行時間保存和比較的時候如果不注意會帶來問題。好的解決方案如下:
a. 把settings.py的時區設置爲'UTC'。
b. 在進行日期時間保存或比較的時候都帶有時區信息。
c. 約定客戶端和服務器端交互都用UTC時間表示。
以上三點同時做到,那麼基本不會有問題。
2. 表單
django的表單定義的字符串類型參數在用戶沒有提供參數的時候,並不會得到None,而是得到一個空字符串。
所以進行判斷時應該使用not,而不是is None。
但是整數類型參數在沒有提供參數的時候,得到的是None。
3. 外鍵名稱
django的數據模型在使用外鍵的時候,其名字就是在模型中定義的名字,無需加_id。