2012-02-06 28 views
1

在我的Django應用程序我有這種方法的模型操作:執行所有編寫使用一個DB與Django的多個數據庫

def deleteItem(self, item, pt): 
     if pt == 'product': 
      i = self.vcartitem_set.filter(product__id=item) 
     elif pt == 'brand': 
      i = self.vcartbrand_set.filter(brand__id=item) 
     else: 
      return u'Wrong product type' 
     i.delete() 
     return 'OK' 

我有2個數據庫,「默認」和「奴隸」。從機是隻讀的,所以當self.vcartitem_set.filter(product__id = item)使用'slave'數據庫執行時,我在i.delete()上有錯誤。我可以通過編寫i.delete(使用='默認')來繞過這個,但是之後我必須爲每個模型編寫該代碼。有沒有辦法告訴django使用'默認'DB執行所有寫操作,即使對象之前使用'slave'DB檢索?

回答

相關問題