Mam pewną zagwozdkę z filtrowaniem danych które pobieram z bazy za pomocą sqlalchemy. Mam zbudowany model tabeli, jestem w stanie wyciągnąć dane z bazy. Jednak problem pojawia się wtedy kiedy dla niektórych tabel musze pobrać dane z jakaś flagą np. TRACKFLAG = "X".
Niestety każda tabela ma inny filtr. Normalnie bym wykonał query lambda.
Jako że mam kilka/kilkanaście różnych warunków dla róznych tabel chce wykonać słownik gdzie będę nazwę tabeli i filtr np: filtrdict = { 'nazwatabeli': query.where(NAZWATABELI.NAZWAKOLUMNY == 'X') 'nazwatabeli2' ; query.where(NAZWATABELI2.NAZWAKOLUMNY == 'A') }.
Czego mi brakuje, brakuje mi tego aby to co jest w słowniku w 'value' wstawić tutaj (to co pogrubione): query_filter = lambda query: query.where(NAZWATABELI.NAZWAKOLUMNY == 'X')
Niestety każda tabela ma inny filtr. Normalnie bym wykonał query lambda.
queryfilter = lambda query: query.where(NAZWATABELI.NAZWAKOLUMNY == 'X')
Jako że mam kilka/kilkanaście różnych warunków dla róznych tabel chce wykonać słownik gdzie będę nazwę tabeli i filtr np:
filtrdict = { 'nazwatabeli': query.where(NAZWATABELI.NAZWAKOLUMNY == 'X')
'nazwatabeli2' ; query.where(NAZWATABELI2.NAZWAKOLUMNY == 'A')
}.
Czego mi brakuje, brakuje mi tego aby to co jest w słowniku w 'value' wstawić tutaj (to co pogrubione):
query_filter = lambda query: query.where(NAZWATABELI.NAZWAKOLUMNY == 'X')
#sqlalchemy #python
#programowanie
Czemu query_filter ma być nieczytelną lambdą zamiast listą filtrów?
Nie mam SQLAlchemy pod ręką, ale obczaj to
https://stackoverflow.com/a/59481316