@cache.cached ничего не знает о декораторе @mobile_template.def mobile_key_prefix():
return '%s/%s' % (is_mobile(request), request.path)
@cache.cached(timeout=50, key_prefix=mobile_key_prefix)is_mobile(request) - она должна возвращать соответственно разные строки для мобильных и для десктопов. Так ключ будет отличатся, и будут отображаться верные данные. class MenuItem(EmbeddedDocument):
name = StringField()
url = StringField()
sub = ListField(EmbeddedDocumentField('self'))
class Menu(Document):
items = ListField(EmbeddedDocumentField(MenuItem))