def cache_flag(**kwargs): action = kwargs.get('action', None) # action is included for m2m_changed signal. Only cache on the post_*. if not action or action in ['post_add', 'post_remove', 'post_clear']: f = kwargs.get('instance') cache.add(keyfmt(get_setting('FLAG_CACHE_KEY'), f.name), f) cache.add(keyfmt(get_setting('FLAG_USERS_CACHE_KEY'), f.name), f.users.all()) cache.add(keyfmt(get_setting('FLAG_GROUPS_CACHE_KEY'), f.name), f.groups.all()) cache.add(keyfmt(get_setting('FLAG_SITES_CACHE_KEY'), f.name), f.sites.all())
def _generate_waffle_js(request): flags = cache.get(keyfmt(FLAGS_ALL_CACHE_KEY)) if flags is None: flags = Flag.objects.values_list('name', flat=True) cache.add(keyfmt(FLAGS_ALL_CACHE_KEY), flags) flag_values = [(f, flag_is_active(request, f)) for f in flags] switches = cache.get(keyfmt(SWITCHES_ALL_CACHE_KEY)) if switches is None: switches = Switch.objects.values_list('name', 'active') cache.add(keyfmt(SWITCHES_ALL_CACHE_KEY), switches) samples = cache.get(keyfmt(SAMPLES_ALL_CACHE_KEY)) if samples is None: samples = Sample.objects.values_list('name', flat=True) cache.add(keyfmt(SAMPLES_ALL_CACHE_KEY), samples) sample_values = [(s, sample_is_active(s)) for s in samples] flag_default = getattr(settings, 'WAFFLE_FLAG_DEFAULT', False) switch_default = getattr(settings, 'WAFFLE_SWITCH_DEFAULT', False) sample_default = getattr(settings, 'WAFFLE_SAMPLE_DEFAULT', False) return loader.render_to_string('waffle/waffle.js', { 'flags': flag_values, 'switches': switches, 'samples': sample_values, 'flag_default': flag_default, 'switch_default': switch_default, 'sample_default': sample_default, })
def _generate_waffle_js(request): flags = cache.get(keyfmt(get_setting('ALL_FLAGS_CACHE_KEY'))) if flags is None: flags = Flag.objects.values_list('name', flat=True) cache.add(keyfmt(get_setting('ALL_FLAGS_CACHE_KEY')), flags) flag_values = [(f, flag_is_active(request, f)) for f in flags] switches = cache.get(keyfmt(get_setting('ALL_SWITCHES_CACHE_KEY'))) if switches is None: switches = Switch.objects.values_list('name', 'active') cache.add(keyfmt(get_setting('ALL_SWITCHES_CACHE_KEY')), switches) samples = cache.get(keyfmt(get_setting('ALL_SAMPLES_CACHE_KEY'))) if samples is None: samples = Sample.objects.values_list('name', flat=True) cache.add(keyfmt(get_setting('ALL_SAMPLES_CACHE_KEY')), samples) sample_values = [(s, sample_is_active(request, s)) for s in samples] return loader.render_to_string('waffle/waffle.js', { 'flags': flag_values, 'switches': switches, 'samples': sample_values, 'flag_default': get_setting('FLAG_DEFAULT'), 'switch_default': get_setting('SWITCH_DEFAULT'), 'sample_default': get_setting('SAMPLE_DEFAULT'), })
def _generate_waffle_js(request): flags = cache.get(keyfmt(get_setting('ALL_FLAGS_CACHE_KEY'))) if flags is None: flags = Flag.objects.values_list('name', flat=True) cache.add(keyfmt(get_setting('ALL_FLAGS_CACHE_KEY')), flags) flag_values = [(f, flag_is_active(request, f)) for f in flags] switches = cache.get(keyfmt(get_setting('ALL_SWITCHES_CACHE_KEY'))) if switches is None: switches = Switch.objects.values_list('name', 'active') cache.add(keyfmt(get_setting('ALL_SWITCHES_CACHE_KEY')), switches) samples = cache.get(keyfmt(get_setting('ALL_SAMPLES_CACHE_KEY'))) if samples is None: samples = Sample.objects.values_list('name', flat=True) cache.add(keyfmt(get_setting('ALL_SAMPLES_CACHE_KEY')), samples) sample_values = [(s, sample_is_active(s)) for s in samples] return loader.render_to_string( 'waffle/waffle.js', { 'flags': flag_values, 'switches': switches, 'samples': sample_values, 'flag_default': get_setting('FLAG_DEFAULT'), 'switch_default': get_setting('SWITCH_DEFAULT'), 'sample_default': get_setting('SAMPLE_DEFAULT'), })
def cache_flag(**kwargs): action = kwargs.get("action", None) # action is included for m2m_changed signal. Only cache on the post_*. if not action or action in ["post_add", "post_remove", "post_clear"]: f = kwargs.get("instance") cache.add(keyfmt(get_setting("FLAG_CACHE_KEY"), f.name), f) cache.add(keyfmt(get_setting("FLAG_USERS_CACHE_KEY"), f.name), f.users.all()) cache.add(keyfmt(get_setting("FLAG_GROUPS_CACHE_KEY"), f.name), f.groups.all())
def cache_flag(**kwargs): action = kwargs.get('action', None) # action is included for m2m_changed signal. Only cache on the post_*. if not action or action in ['post_add', 'post_remove', 'post_clear']: f = kwargs.get('instance') cache.add(keyfmt(get_setting('FLAG_CACHE_KEY'), f.name), f) cache.add(keyfmt(get_setting('FLAG_USERS_CACHE_KEY'), f.name), f.users.all()) cache.add(keyfmt(get_setting('FLAG_GROUPS_CACHE_KEY'), f.name), f.groups.all())
def cache_switch(**kwargs): switch = kwargs.get('instance') cache.add(keyfmt(get_setting('SWITCH_CACHE_KEY'), switch.name), switch)
def cache_sample(**kwargs): sample = kwargs.get('instance') cache.add(keyfmt(get_setting('SAMPLE_CACHE_KEY'), sample.name), sample)
def cache_switch(**kwargs): switch = kwargs.get('instance') cache.add(keyfmt(get_setting('SWITCH_CACHE_KEY'), switch.name, switch.site), switch)
def cache_sample(**kwargs): sample = kwargs.get('instance') cache.add(keyfmt(get_setting('SAMPLE_CACHE_KEY'), sample.name, sample.site), sample)
def cache_switch(**kwargs): switch = kwargs.get("instance") cache.add(keyfmt(get_setting("SWITCH_CACHE_KEY"), switch.name), switch)
def cache_sample(**kwargs): sample = kwargs.get("instance") cache.add(keyfmt(get_setting("SAMPLE_CACHE_KEY"), sample.name), sample)
def cache_switch(**kwargs): switch = kwargs.get('instance') cache.add(keyfmt(SWITCH_CACHE_KEY, switch.name), switch)
def cache_sample(**kwargs): sample = kwargs.get('instance') cache.add(keyfmt(SAMPLE_CACHE_KEY, sample.name), sample)