Я использую Python 2.6.5 и Django 1.3
Позвольте мне сказать, что у меня есть такая модель:
class Company(models.Model):
name = models.CharField(...)
type = models.SmallIntegerField(...)
....
def check_condition(self, someParam):
do someThing...
return someThing
Эта модель интенсивно используется, поэтому я сохраняю основные данные всловарь и кешировать этот словарь
aComp = Company.objects.get(pk=somevalue)
compDict = {'name':aComp.name, 'type': aComp.type...}
cache.set('companyInfo', compDict)
Все хорошо, но в некоторых случаях мне нужно вызывать методы Company
, но поскольку я кеширую информация о компании , мне интересно, так ли этохорошо кешировать объект или нет ... Как и
compDict = {'name':aComp.name, 'type': aComp.type, 'obj':aComp}
И использовать его
myComp = cache.get('companyInfo')
compInst = myComp['obj']
compInst.check_condition(aParam)
И мне интересно, насколько эффективно кешировать объект и использовать кэшированный объект для вызовов методов экземпляракак это?