我在一个项目中使用 johnny-cache (1.6.1a) 和 Django 1.6。
我有一个实现 TaggableManger 的模型:
class Publication(models.Model):
title = models.CharField(max_length=255, db_index=True)
editor = models.ForeignKey(Employee, blank=True, null=True=)
....
keywords = TaggableManager('Keywords', blank=True)
关键字没有被 johnny-cache 自动失效。所以我使用了一个 post_save 信号来做到这一点。
我尝试传递对象名称,例如 ,invalidate('Tag')
但它从未奏效。
这样做:
def johhny_clear_cache(sender, instance, **kwargs):
if sender.__name__ in ['Tag', 'Publication']:
johnny.cache.invalidate('taggit_taggeditem', 'taggit_tag')
所以我想知道这是否是预期的行为,还是有其他方法?