最近在用django做一下項目, 我也是第一次使用django, 也是第一次比較正式的使用Python. 本文將記錄一下使用django過程中遇到的一下問題和解決辦法. 并且不斷更新!
setting設置
幾天發現部署以后顯示的時間不多, 是因為時區設置到問題
對于我們中國:
TIME_ZONE?=?'Asia/Shanghai'
LANGUAGE_CODE?=?'zh-cn'
ManyToMany的bug
如果你在使用many-to-many去取數據的時候發生如下異常:
TypeError: filter() keywords must be strings
這個是有django的bug引起的:
修復方法:
django\db\models\fields\related.py 349行
????????def?__init__(self,?model=None,?core_filters=None,?instance=None,?symmetrical=None,
????????????????join_table=None,?source_col_name=None,?target_col_name=None):
????????????super(ManyRelatedManager,?self).__init__()
????????????self.core_filters?=?core_filters
????????????self.model?=?model
????????????self.symmetrical?=?symmetrical
????????????self.instance?=?instance
????????????self.join_table?=?join_table
????????????self.source_col_name?=?source_col_name
????????????self.target_col_name?=?target_col_name
????????????self._pk_val?=?self.instance._get_pk_val()
改成
????????def?__init__(self,?model=None,?core_filters=None,?instance=None,?symmetrical=None,
????????????????join_table=None,?source_col_name=None,?target_col_name=None):
????????????super(ManyRelatedManager,?self).__init__()
????????????
????????????for?key,?value?in?core_filters.items():?
????????????????if?not?isinstance(key,?str):?
????????????????????del?core_filters[key]??
????????????????????core_filters[smart_str(key)]?=?value
????????????????????
????????????self.core_filters?=?core_filters
????????????self.model?=?model
????????????self.symmetrical?=?symmetrical
????????????self.instance?=?instance
????????????self.join_table?=?join_table
????????????self.source_col_name?=?source_col_name
????????????self.target_col_name?=?target_col_name
????????????self._pk_val?=?self.instance._get_pk_val()