это может быть очень простой вопрос, но, поскольку я новичок, я должен спросить здесь извините, так как я не нашел ответа до сих пор после долгих игр с ним.
Я использую flask со списком python типов продуктов, позволяющим пользователям вводить элемент питания в форму, и проверять его с помощью валидаторов, чтобы убедиться, что элемент находится в списке. Введенные продукты из формы затем сохраняются в таблице базы данных.
I wi sh, чтобы заменить этот подход списка на запрос sql из базы данных предварительно определенных типов продуктов питания, в то время как с использованием SQLAlchemy как это используется в другом месте приложения.
Упрощенная версия кода выглядит следующим образом: -
#db connection is already setup and working OK in another part of the app
DB_URL = 'postgresql+psycopg2://{user}:{pw}@{url}:{port}/{db}'.format(user=POSTGRES_USER, pw=POSTGRES_PW, url=POSTGRES_URL, port=POSTGRES_PORT, db=POSTGRES_DB)
app.config['SQLALCHEMY_DATABASE_URI'] = DB_URL
db = SQLAlchemy(app)
#example of the list
eaten = ['bread', 'crackers', 'ham', 'bacon']
#where the 'food_word' variable gets defined from an input and validated
food_word_1 = StringField('add the food type you have eaten here:', validators=[Optional(), AnyOf(eaten)])
Я пытался заменить список на eaten = db.execute('SELECT food_name FROM food_type')
(таблица и столбец ) без удачи.
Я не уверен, нужно ли мне создавать какие-то классы / методы в model.py для этой операции Select / GET или даже использовать что-то вроде pandas (которое я также есть в приложении), чтобы сделать эту работу.
Любое руководство приветствуется!
спасибо, MD