Example #1
0
 def test_vars_models(self):
     langs = settings.VARS['langs'][1] # desc/value
     eq_(Var.all().count(), 0)
     # jeszcze nie ma w cache
     eq_(memcache.get('Var-langs'), None) #@UndefinedVariable
     # zapytujemy - dociaga z config i wklada do cache    
     eq_(Var.get_value('langs'), langs)
     # juz jest w cache
     eq_(memcache.get('Var-langs'), langs) #@UndefinedVariable
     # ale jszcze nic nie mamy w datastore
     eq_(Var.all().count(), 0) # still zero
     
     # ladujemy z config
     Var.update_from_settings()
     eq_(Var.all().count(), 4)
     
     # wciaz 4
     Var.update_from_settings()
     eq_(Var.all().count(), 4)
     
     # aktulizuemy zmienna ale ze zlym typem (nie zgadza sie z poprzednim)
     assert_raises(ValueError, Var.set_value, 'langs', 1)
     
     # aktualizujemy zmienna 
     newvalue = ['foo', 'bar']   
     Var.set_value('langs', newvalue)
     
     eq_(memcache.get('Var-langs'), newvalue) #@UndefinedVariable
     memcache.delete('Var-langs') #@UndefinedVariable
     eq_(Var.get_value('langs'), newvalue)
     eq_(memcache.get('Var-langs'), newvalue) #@UndefinedVariable
Example #2
0
 def vars(self):
     """ strona edycji ustawien portalu """
     if self.request.method=='POST':
         name = self.request.params['name'] 
         forms_and_vars = []
         for var in Var.all():
             if name == var.name:
                 form = VarForm(self.request.POST, obj=var) 
                 if form.validate():
                     new_value = yaml.load(form.data['raw'])
                     Var.set_value(var.name, new_value)                        
                     self.set_flash(u'Zmienna "%s" zapisana.'%var.desc)
                     return self.redirect_to('vars')
             else:
                 form = VarForm(obj=var)                                 
             forms_and_vars.append((form,var))
     else:
         # default
         forms_and_vars = [(VarForm(obj=var),var) for var in Var.all()]
     return self.render('admin/vars.html', forms_and_vars=forms_and_vars)