diff options
Diffstat (limited to 'equations/views.py')
-rw-r--r-- | equations/views.py | 57 |
1 files changed, 55 insertions, 2 deletions
diff --git a/equations/views.py b/equations/views.py index 41309c1..21c4f3a 100644 --- a/equations/views.py +++ b/equations/views.py @@ -35,7 +35,60 @@ def vars_by_symbs(request, which_symbols): return HttpResponse('[]', mimetype="text/javascript") if vars[-1] == '/' or vars[-1] == '': vars = vars[:-1] - returnables = Variable.objects.filter(symbol=vars[0]) + #vkeys = list() + returnables = list() + for v in vars: + returnables.append([r for r in Symbol.get_by_id(int(v)).variable_set.run()]) + print returnables + #vkeys.append(str(Symbol.get_by_id(int(v)).key())) + #returnables = Variable.objects.all().filter('symbol IN ', vkeys).run() - data = serializers.serialize("json", returnables) + data = [serializers.serialize("json", r) for r in returnables] return HttpResponse(data, mimetype="text/javascript") + #return HttpResponse(returnables, mimetype="text/javascript") + +def import_symbols(filename): + infile = open(filename) + stuff = infile.readlines() + infile.close() + l = eval(stuff[0]) + for symb in l: + vals = symb['fields'] + newsymb = Symbol(latex=vals['latex'], unicode=vals['unicode'], + name=vals['name']) + newsymb.save() + +def import_equations(filename): + infile = open(filename) + stuff = infile.readlines() + infile.close() + l = eval(stuff[0]) + for symb in l: + vals = symb['fields'] + newsymb = Symbol(latex=vals['latex'], unicode=vals['unicode'], + name=vals['name']) + newsymb.save() + +def import_variables(filename): + infile = open(filename) + stuff = infile.readlines() + infile.close() + l = eval(stuff[0], {'true':True, 'false':False}) + for vari in l: + vals = vari['fields'] + newvar = Variable(latex=vals['latex'], unicode=vals['unicode'], + name=vals['name'], description=vals['description'], + reference=vals['reference']) + newvar.save() + +def match_var_symb(): + vs = Variable.objects.all().run() + + for v in vs: + try: + vname = v.name.split("Generic ")[1] + s = Symbol.all().filter('name =', vname).run().next() + v.symbol = s + v.save() + except: + print "Error assigning symbol to value: %s " % v |