0
我處於這種情況,我必須通過基於外鍵的ajax調用將多個記錄插入到Postgre數據庫中。插入多行的最快最乾淨的方法django
目前,我爲每條記錄使用db1.db2_set.create(...)
,循環播放字典列表。
這是最好的方法嗎?看來我正在爲每個插入命中數據庫。
我處於這種情況,我必須通過基於外鍵的ajax調用將多個記錄插入到Postgre數據庫中。插入多行的最快最乾淨的方法django
目前,我爲每條記錄使用db1.db2_set.create(...)
,循環播放字典列表。
這是最好的方法嗎?看來我正在爲每個插入命中數據庫。
我敢肯定,當你調用save()方法時,django將查詢數據庫。所以如果你做類似的事情:
for i in objects:
db1.db2_set.create(i)
db1.save()
它可能只訪問一次數據庫。但是,這可能是有用的: http://djangosnippets.org/snippets/766/
這是一箇中間件,您可以添加查看您的django應用程序在您訪問的每個頁面中使用多少個查詢。
http://stackoverflow.com/questions/4294088/accelerate-bulk-insert-using-djangos-orm –
在調用'.save'之前,您不會碰到數據庫。你是在循環中做這件事,還是可以等到循環完成?如果您可以等待,Django將在單個事務中更新數據庫。 –
實際上創建沒有命中數據庫,我不需要調用'.save()'來讓它提交到數據庫 –