Wpis z mikrobloga

Muszę przerobić troche projekt oparty na flasku i sqlalchemy. Mamy endpoint gdzie wsadem jest nazwa klasy(tabeli) która ma zostać wywołana. Jednak z tej klasy muszę pobrać zmieną _tablename bo to jest moja domyśla nazwa tabeli. Żeby to zrobić muszę wywołać plik gdzie trzymam te klasy(tablemodels) i podać nazwę klasy(Loc) - tablemodels.Loc.tablename_ <- takie coś zwraca mi to o co mi chodzi. Teraz pytanie jak zrobić żeby Loc zamienić na zmienną.

#programowanie #flask #sqlalchemy
#python
  • 6
@PiotrokeJ:
Zawsze można evalem zrobić, ale może znajdziesz jakieś lepsze rozwiązanie.

class Abc:
value = 123

class Xyz:
value = 456

def getvaluefromclass(classname):
return eval(f"{classname}.value")

print(get
valuefromclass("Abc"))
print(getvaluefromclass("Xyz"))

output:
python test.py
123
456

albo name samo Eval(nazwa
klasy) zwróci klasę i możesz robić z tym co chcesz