Используя python и flask-sqlalchemy, как мне вернуть значение из моей таблицы, используя динамическую переменную в качестве имени столбца? - PullRequest
0 голосов
/ 12 марта 2019

Из моей таблицы базы данных я хочу вернуть несколько значений.Каждое значение находится в другой строке и в другом столбце.

Я использую цикл for для возврата каждой строки.Во время каждого цикла я успешно могу сохранить значение 'year' в словаре (state_year_dict).Это потому, что «год» - это имя столбца в моей таблице.

states = ['alabama', 'alaska', 'arizona', ... 'wisconsin', 'wyoming']
state_year_dict = {}
state_total_dict = {}
chosen_name = NameCounts.query.filter_by(name=name, gender=gender)
for state in states:
    state_high = chosen_name.order_by(getattr(NameCounts, state).desc()).first()
    state_year_dict[state] = state_high.year

Во время того же цикла я хочу сохранить значение из «состояния», которое в данный момент используется в цикле.Однако я не могу понять, как использовать переменную «состояние», чтобы получить желаемое значение.Вот два примера, которые я пробовал, которые не работают.Они выдают ошибку атрибута, утверждая, что модель не имеет атрибута «состояние» или «getattr».

state_total_dict[state] = state_high.state
state_total_dict[state] = state_high.getattr(BabyNameCountsA, state)

Я везде искал ответ без удачи.Любая идея будет принята с благодарностью.

1 Ответ

0 голосов
/ 13 марта 2019

Проведя немного больше исследований, я понял, как решить мою проблему.Строка проблемы теперь гласит:

state_total_dict[state] = getattr(state_high, state)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...