3
我已這最終輸出大約700輸入元件像這樣的模板:與調用瀏覽功能,並且將所述模板呈現(生成HTML,但不包括瀏覽器渲染時間)django:爲什麼在模板中獲取模型的.id字段很慢?
<input class="ticket" size="3" maxlength="15" type="text" name="{{ ticket.id }}">
一起,它需要〜1.5秒。我正在優化模板,以查看最長的時間,因爲還有其他一些更復雜的事情......我意識到如果我刪除了{{ ticket.id }}
部分,渲染時間降低到0.48秒。我還送在票證模型的函數:
def get_input_name(self): return str(self.id)
和替換模板中的線:
<input class="ticket" size="3" maxlength="15" type="text" name="{{ ticket.get_input_name }}">
並且這產生相同的輸出,在〜0.52秒。
爲什麼要撥打{{ ticket.id }}
這麼慢?
可能是因爲它會產生額外的SQL調用,雖然不太確定,但嘗試使用類似http://pypi.python.org/pypi/django-debug-toolbar-django13/0.8.4的分析 – armonge
返回您是否在使用以及您的票務模型中有多少行? – nicolas
@nicolas:postgresql,我的門票模型中有10個字段 – Claudiu