Django如何为多租户配置管理大量对象?

时间:2015-03-12 11:50:16

标签: python django postgresql object

我在django做一个网络应用程序。最初我只考虑过一家商店。但现在我正在考虑将其作为Web应用程序实现。我正在使用postgres。我担心的是每天都会产生大量100k左右的物体。我在考虑每个客户的单独数据库。这是个好主意吗?

创建对象的模型是

class Invoice(models.Model):
    now = dt.now()
    cash_user = models.CharField(max_length=250, null=True, blank=True)
    pwt = models.IntegerField()
    dc = models.IntegerField()
    total = models.IntegerField()

def _get_payable(self):
    amt_payable = total - pwt - dc
    return amt_payable

payable = property(_get_payable)

def __str__(self):
    return str(self.id)

class Set(models.Model):
    party = models.ForeignKey(UserProfile, null=True, blank=True)
    serial = models.CharField(max_length=5, null=True,blank=True)
    starting = models.IntegerField()
    ending = models.IntegerField()
    base = models.ForeignKey(base)
    invoice = models.ForeignKey(Invoice, null=True, blank=True)
    purchaseset = models.ForeignKey(Purchase, null=True, blank=True)
    dtime = dt.now()

def _get_count(self):
   "Returns the total count of tickets in one set"
   return self.ending - self.starting + 1
   count = property(_get_count)

def _get_price(self):
    "Returns total price of a set"
    return self.party__unitprice * count
    price = property(_get_price)

def __str__(self):
    return  str(self.base)+':'+str(self.dtime.date())+':'+str(self.dtime.time())

我必须为开始和结束指定的范围内的每个条目创建对象。即,如果起始是100000并且结束是110000,那么如果该发票仅包含该一个条目,则生成一个发票对象必须创建另一个模型的10000个对象。这是因为我必须跟踪每个单独的项目。如果网络应用只针对一个客户,我想我可以管理这个。我可以使用objects.create()objects.filter()objects.get()等方法使用django orm创建和管理对象吗?

0 个答案:

没有答案