Python django.core.cache.utils.make_template_fragment_key() Examples
The following are 30
code examples of django.core.cache.utils.make_template_fragment_key().
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example.
You may also want to check out all available functions/classes of the module
django.core.cache.utils
, or try the search function
.
Example #1
Source File: list.py From django-idcops with Apache License 2.0 | 6 votes |
def user_config(self, data): newd = dict( list_display=data.getlist('list_display'), list_only_date=data.get('list_only_date', 1) ) content = json.dumps(newd) config = Configure.objects.filter( content_type=get_content_type_for_model(self.model), onidc_id=self.onidc_id, creator=self.request.user, mark='list').order_by('-pk') if config.exists(): config = config.update(content=content) else: config = Configure.objects.create( content_type=get_content_type_for_model(self.model), onidc_id=self.onidc_id, creator=self.request.user, mark='list', content=content) key = utils.make_template_fragment_key("{}.{}.{}".format( self.request.user.id, self.model_name, 'list')) cache.delete(key) return config
Example #2
Source File: models.py From TWLight with MIT License | 6 votes |
def save(self, *args, **kwargs): super(Partner, self).save(*args, **kwargs) """Invalidate this partner's pandoc-rendered html from cache""" for code in RESOURCE_LANGUAGE_CODES: short_description_cache_key = make_template_fragment_key( "partner_short_description", [code, self.pk] ) description_cache_key = make_template_fragment_key( "partner_description", [code, self.pk] ) send_instructions_cache_key = make_template_fragment_key( "partner_send_instructions", [code, self.pk] ) cache.delete(short_description_cache_key) cache.delete(description_cache_key) cache.delete(send_instructions_cache_key)
Example #3
Source File: organization.py From online-judge with GNU Affero General Public License v3.0 | 6 votes |
def handle(self, request, org, profile): if profile.organizations.filter(id=org.id).exists(): return generic_message(request, _('Joining organization'), _('You are already in the organization.')) if not org.is_open: return generic_message(request, _('Joining organization'), _('This organization is not open.')) max_orgs = settings.DMOJ_USER_MAX_ORGANIZATION_COUNT if profile.organizations.filter(is_open=True).count() >= max_orgs: return generic_message( request, _('Joining organization'), _('You may not be part of more than {count} public organizations.').format(count=max_orgs), ) profile.organizations.add(org) profile.save() cache.delete(make_template_fragment_key('org_member_count', (org.id,)))
Example #4
Source File: signals.py From online-judge with GNU Affero General Public License v3.0 | 6 votes |
def problem_update(sender, instance, **kwargs): if hasattr(instance, '_updating_stats_only'): return cache.delete_many([ make_template_fragment_key('submission_problem', (instance.id,)), make_template_fragment_key('problem_feed', (instance.id,)), 'problem_tls:%s' % instance.id, 'problem_mls:%s' % instance.id, ]) cache.delete_many([make_template_fragment_key('problem_html', (instance.id, engine, lang)) for lang, _ in settings.LANGUAGES for engine in EFFECTIVE_MATH_ENGINES]) cache.delete_many([make_template_fragment_key('problem_authors', (instance.id, lang)) for lang, _ in settings.LANGUAGES]) cache.delete_many(['generated-meta-problem:%s:%d' % (lang, instance.id) for lang, _ in settings.LANGUAGES]) for lang, _ in settings.LANGUAGES: unlink_if_exists(get_pdf_path('%s.%s.pdf' % (instance.code, lang)))
Example #5
Source File: organization.py From online-judge with GNU Affero General Public License v3.0 | 5 votes |
def post(self, request, *args, **kwargs): self.object = organization = self.get_object() self.formset = formset = OrganizationRequestFormSet(request.POST, request.FILES) if formset.is_valid(): if organization.slots is not None: deleted_set = set(formset.deleted_forms) to_approve = sum(form.cleaned_data['state'] == 'A' for form in formset.forms if form not in deleted_set) can_add = organization.slots - organization.members.count() if to_approve > can_add: messages.error(request, _('Your organization can only receive %d more members. ' 'You cannot approve %d users.') % (can_add, to_approve)) return self.render_to_response(self.get_context_data(object=organization)) approved, rejected = 0, 0 for obj in formset.save(): if obj.state == 'A': obj.user.organizations.add(obj.organization) approved += 1 elif obj.state == 'R': rejected += 1 messages.success(request, ungettext('Approved %d user.', 'Approved %d users.', approved) % approved + '\n' + ungettext('Rejected %d user.', 'Rejected %d users.', rejected) % rejected) cache.delete(make_template_fragment_key('org_member_count', (organization.id,))) return HttpResponseRedirect(request.get_full_path()) return self.render_to_response(self.get_context_data(object=organization))
Example #6
Source File: utils.py From astrobin with GNU Affero General Public License v3.0 | 5 votes |
def clear_notifications_template_cache(username): key = make_template_fragment_key('notifications_table', [username]) cache.delete(key)
Example #7
Source File: tests.py From djongo with GNU Affero General Public License v3.0 | 5 votes |
def test_proper_escaping(self): key = make_template_fragment_key('spam', ['abc:def%']) self.assertEqual(key, 'template.cache.spam.f27688177baec990cdf3fbd9d9c3f469')
Example #8
Source File: tests.py From djongo with GNU Affero General Public License v3.0 | 5 votes |
def test_with_many_vary_on(self): key = make_template_fragment_key('bar', ['abc', 'def']) self.assertEqual(key, 'template.cache.bar.4b35f12ab03cec09beec4c21b2d2fa88')
Example #9
Source File: tests.py From djongo with GNU Affero General Public License v3.0 | 5 votes |
def test_without_vary_on(self): key = make_template_fragment_key('a.fragment') self.assertEqual(key, 'template.cache.a.fragment.d41d8cd98f00b204e9800998ecf8427e')
Example #10
Source File: tests.py From djongo with GNU Affero General Public License v3.0 | 5 votes |
def test_proper_escaping(self): key = make_template_fragment_key('spam', ['abc:def%']) self.assertEqual(key, 'template.cache.spam.f27688177baec990cdf3fbd9d9c3f469')
Example #11
Source File: tests.py From djongo with GNU Affero General Public License v3.0 | 5 votes |
def test_with_many_vary_on(self): key = make_template_fragment_key('bar', ['abc', 'def']) self.assertEqual(key, 'template.cache.bar.4b35f12ab03cec09beec4c21b2d2fa88')
Example #12
Source File: tests.py From djongo with GNU Affero General Public License v3.0 | 5 votes |
def test_with_one_vary_on(self): key = make_template_fragment_key('foo', ['abc']) self.assertEqual(key, 'template.cache.foo.900150983cd24fb0d6963f7d28e17f72')
Example #13
Source File: tests.py From djongo with GNU Affero General Public License v3.0 | 5 votes |
def test_without_vary_on(self): key = make_template_fragment_key('a.fragment') self.assertEqual(key, 'template.cache.a.fragment.d41d8cd98f00b204e9800998ecf8427e')
Example #14
Source File: models.py From TWLight with MIT License | 5 votes |
def save(self, *args, **kwargs): """Invalidate the rendered html stream description from cache""" super(Stream, self).save(*args, **kwargs) for code in RESOURCE_LANGUAGE_CODES: cache_key = make_template_fragment_key( "stream_description", [code, self.pk] ) cache.delete(cache_key)
Example #15
Source File: list.py From django-idcops with Apache License 2.0 | 5 votes |
def _config(self): key = utils.make_template_fragment_key("{}.{}.{}".format( self.request.user.id, self.model_name, 'list')) data = cache.get_or_set(key, get_user_config(self.request.user, 'list', self.model), 180) return data
Example #16
Source File: models.py From product-database with MIT License | 5 votes |
def invalidate_page_cache(sender, instance, **kwargs): key = make_template_fragment_key("productlist_detail", [instance.id, False]) if key: cache.delete(key) key = make_template_fragment_key("productlist_detail", [instance.id, True]) if key: cache.delete(key)
Example #17
Source File: cache.py From python2017 with MIT License | 5 votes |
def render(self, context): try: expire_time = self.expire_time_var.resolve(context) except VariableDoesNotExist: raise TemplateSyntaxError('"cache" tag got an unknown variable: %r' % self.expire_time_var.var) try: expire_time = int(expire_time) except (ValueError, TypeError): raise TemplateSyntaxError('"cache" tag got a non-integer timeout value: %r' % expire_time) if self.cache_name: try: cache_name = self.cache_name.resolve(context) except VariableDoesNotExist: raise TemplateSyntaxError('"cache" tag got an unknown variable: %r' % self.cache_name.var) try: fragment_cache = caches[cache_name] except InvalidCacheBackendError: raise TemplateSyntaxError('Invalid cache name specified for cache tag: %r' % cache_name) else: try: fragment_cache = caches['template_fragments'] except InvalidCacheBackendError: fragment_cache = caches['default'] vary_on = [var.resolve(context) for var in self.vary_on] cache_key = make_template_fragment_key(self.fragment_name, vary_on) value = fragment_cache.get(cache_key) if value is None: value = self.nodelist.render(context) fragment_cache.set(cache_key, value, expire_time) return value
Example #18
Source File: cache.py From openhgsenti with Apache License 2.0 | 5 votes |
def render(self, context): try: expire_time = self.expire_time_var.resolve(context) except VariableDoesNotExist: raise TemplateSyntaxError('"cache" tag got an unknown variable: %r' % self.expire_time_var.var) try: expire_time = int(expire_time) except (ValueError, TypeError): raise TemplateSyntaxError('"cache" tag got a non-integer timeout value: %r' % expire_time) if self.cache_name: try: cache_name = self.cache_name.resolve(context) except VariableDoesNotExist: raise TemplateSyntaxError('"cache" tag got an unknown variable: %r' % self.cache_name.var) try: fragment_cache = caches[cache_name] except InvalidCacheBackendError: raise TemplateSyntaxError('Invalid cache name specified for cache tag: %r' % cache_name) else: try: fragment_cache = caches['template_fragments'] except InvalidCacheBackendError: fragment_cache = caches['default'] vary_on = [var.resolve(context) for var in self.vary_on] cache_key = make_template_fragment_key(self.fragment_name, vary_on) value = fragment_cache.get(cache_key) if value is None: value = self.nodelist.render(context) fragment_cache.set(cache_key, value, expire_time) return value
Example #19
Source File: cache.py From python with Apache License 2.0 | 5 votes |
def render(self, context): try: expire_time = self.expire_time_var.resolve(context) except VariableDoesNotExist: raise TemplateSyntaxError('"cache" tag got an unknown variable: %r' % self.expire_time_var.var) try: expire_time = int(expire_time) except (ValueError, TypeError): raise TemplateSyntaxError('"cache" tag got a non-integer timeout value: %r' % expire_time) if self.cache_name: try: cache_name = self.cache_name.resolve(context) except VariableDoesNotExist: raise TemplateSyntaxError('"cache" tag got an unknown variable: %r' % self.cache_name.var) try: fragment_cache = caches[cache_name] except InvalidCacheBackendError: raise TemplateSyntaxError('Invalid cache name specified for cache tag: %r' % cache_name) else: try: fragment_cache = caches['template_fragments'] except InvalidCacheBackendError: fragment_cache = caches['default'] vary_on = [var.resolve(context) for var in self.vary_on] cache_key = make_template_fragment_key(self.fragment_name, vary_on) value = fragment_cache.get(cache_key) if value is None: value = self.nodelist.render(context) fragment_cache.set(cache_key, value, expire_time) return value
Example #20
Source File: cache.py From Hands-On-Application-Development-with-PyCharm with MIT License | 5 votes |
def render(self, context): try: expire_time = self.expire_time_var.resolve(context) except VariableDoesNotExist: raise TemplateSyntaxError('"cache" tag got an unknown variable: %r' % self.expire_time_var.var) if expire_time is not None: try: expire_time = int(expire_time) except (ValueError, TypeError): raise TemplateSyntaxError('"cache" tag got a non-integer timeout value: %r' % expire_time) if self.cache_name: try: cache_name = self.cache_name.resolve(context) except VariableDoesNotExist: raise TemplateSyntaxError('"cache" tag got an unknown variable: %r' % self.cache_name.var) try: fragment_cache = caches[cache_name] except InvalidCacheBackendError: raise TemplateSyntaxError('Invalid cache name specified for cache tag: %r' % cache_name) else: try: fragment_cache = caches['template_fragments'] except InvalidCacheBackendError: fragment_cache = caches['default'] vary_on = [var.resolve(context) for var in self.vary_on] cache_key = make_template_fragment_key(self.fragment_name, vary_on) value = fragment_cache.get(cache_key) if value is None: value = self.nodelist.render(context) fragment_cache.set(cache_key, value, expire_time) return value
Example #21
Source File: organization.py From online-judge with GNU Affero General Public License v3.0 | 5 votes |
def handle(self, request, org, profile): if not profile.organizations.filter(id=org.id).exists(): return generic_message(request, _('Leaving organization'), _('You are not in "%s".') % org.short_name) profile.organizations.remove(org) cache.delete(make_template_fragment_key('org_member_count', (org.id,)))
Example #22
Source File: jinja2ext.py From django-cachalot with BSD 3-Clause "New" or "Revised" License | 5 votes |
def cache(self, *args, **kwargs): cache_alias = kwargs.get('cache_alias', DEFAULT_CACHE_ALIAS) cache_key = kwargs.get('cache_key', kwargs['default_cache_key']) if cache_key is None: raise ValueError( 'You must set `cache_key` when the template is not a file.') cache_key = make_template_fragment_key(cache_key, args) out = caches[cache_alias].get(cache_key) if out is None: out = kwargs['caller']() caches[cache_alias].set(cache_key, out, kwargs.get('timeout')) return out
Example #23
Source File: cache.py From bioforum with MIT License | 5 votes |
def render(self, context): try: expire_time = self.expire_time_var.resolve(context) except VariableDoesNotExist: raise TemplateSyntaxError('"cache" tag got an unknown variable: %r' % self.expire_time_var.var) if expire_time is not None: try: expire_time = int(expire_time) except (ValueError, TypeError): raise TemplateSyntaxError('"cache" tag got a non-integer timeout value: %r' % expire_time) if self.cache_name: try: cache_name = self.cache_name.resolve(context) except VariableDoesNotExist: raise TemplateSyntaxError('"cache" tag got an unknown variable: %r' % self.cache_name.var) try: fragment_cache = caches[cache_name] except InvalidCacheBackendError: raise TemplateSyntaxError('Invalid cache name specified for cache tag: %r' % cache_name) else: try: fragment_cache = caches['template_fragments'] except InvalidCacheBackendError: fragment_cache = caches['default'] vary_on = [var.resolve(context) for var in self.vary_on] cache_key = make_template_fragment_key(self.fragment_name, vary_on) value = fragment_cache.get(cache_key) if value is None: value = self.nodelist.render(context) fragment_cache.set(cache_key, value, expire_time) return value
Example #24
Source File: views.py From tom_base with GNU General Public License v3.0 | 5 votes |
def get(self, request, *args, **kwargs): """ Method that handles the GET requests for this view. Sets all other ``DataProduct``s to unfeatured in the database, and sets the specified ``DataProduct`` to featured. Caches the featured image. Deletes previously featured images from the cache. """ product_id = kwargs.get('pk', None) product = DataProduct.objects.get(pk=product_id) try: current_featured = DataProduct.objects.filter( featured=True, data_product_type=product.data_product_type, target=product.target ) for featured_image in current_featured: featured_image.featured = False featured_image.save() featured_image_cache_key = make_template_fragment_key( 'featured_image', str(featured_image.target.id) ) cache.delete(featured_image_cache_key) except DataProduct.DoesNotExist: pass product.featured = True product.save() return redirect(reverse( 'tom_targets:detail', kwargs={'pk': request.GET.get('target_id')}) )
Example #25
Source File: models.py From dissemin with GNU Affero General Public License v3.0 | 5 votes |
def invalidate_cache(self): """ Invalidate the HTML cache for all the publications of this researcher. """ for a in self.authors+[None]: rpk = None if a: if a.researcher_id is None: continue else: rpk = a.researcher_id for lang in settings.POSSIBLE_LANGUAGE_CODES: key = make_template_fragment_key( 'publiListItem', [self.pk, lang, rpk]) cache.delete(key)
Example #26
Source File: cache.py From GTDWeb with GNU General Public License v2.0 | 5 votes |
def render(self, context): try: expire_time = self.expire_time_var.resolve(context) except VariableDoesNotExist: raise TemplateSyntaxError('"cache" tag got an unknown variable: %r' % self.expire_time_var.var) try: expire_time = int(expire_time) except (ValueError, TypeError): raise TemplateSyntaxError('"cache" tag got a non-integer timeout value: %r' % expire_time) if self.cache_name: try: cache_name = self.cache_name.resolve(context) except VariableDoesNotExist: raise TemplateSyntaxError('"cache" tag got an unknown variable: %r' % self.cache_name.var) try: fragment_cache = caches[cache_name] except InvalidCacheBackendError: raise TemplateSyntaxError('Invalid cache name specified for cache tag: %r' % cache_name) else: try: fragment_cache = caches['template_fragments'] except InvalidCacheBackendError: fragment_cache = caches['default'] vary_on = [var.resolve(context) for var in self.vary_on] cache_key = make_template_fragment_key(self.fragment_name, vary_on) value = fragment_cache.get(cache_key) if value is None: value = self.nodelist.render(context) fragment_cache.set(cache_key, value, expire_time) return value
Example #27
Source File: signals.py From online-judge with GNU Affero General Public License v3.0 | 5 votes |
def profile_update(sender, instance, **kwargs): if hasattr(instance, '_updating_stats_only'): return cache.delete_many([make_template_fragment_key('user_about', (instance.id, engine)) for engine in EFFECTIVE_MATH_ENGINES] + [make_template_fragment_key('org_member_count', (org_id,)) for org_id in instance.organizations.values_list('id', flat=True)])
Example #28
Source File: signals.py From online-judge with GNU Affero General Public License v3.0 | 5 votes |
def contest_update(sender, instance, **kwargs): if hasattr(instance, '_updating_stats_only'): return cache.delete_many(['generated-meta-contest:%d' % instance.id] + [make_template_fragment_key('contest_html', (instance.id, engine)) for engine in EFFECTIVE_MATH_ENGINES])
Example #29
Source File: signals.py From online-judge with GNU Affero General Public License v3.0 | 5 votes |
def license_update(sender, instance, **kwargs): cache.delete(make_template_fragment_key('license_html', (instance.id,)))
Example #30
Source File: signals.py From online-judge with GNU Affero General Public License v3.0 | 5 votes |
def language_update(sender, instance, **kwargs): cache.delete_many([make_template_fragment_key('language_html', (instance.id,)), 'lang:cn_map'])