Моя модель в базе данных с использованием SQLAlchemy и Flask не может сохранять данные. Ошибка типа: Personal_guide() поPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Моя модель в базе данных с использованием SQLAlchemy и Flask не может сохранять данные. Ошибка типа: Personal_guide() по

Сообщение Anonymous »

Я получаю ответ от магистра права Moondream из Олламы. И в этом нет ничего плохого, потому что я пытался отладить, распечатав ответ, и все было нормально. Я считаю, что проблема кроется в базе данных. В моей базе данных есть две модели: одна — «пользователи», а другая — «personal_guide». «Пользователи» отлично работают с аутентификацией (войдите в систему, зарегистрируйтесь), но личный_гид просто не может. Он всегда получает неожиданный аргумент ключевого слова.
Вот мой файл models.py:

Код: Выделить всё

class users(db.Model, UserMixin):
id = db.Column(db.Integer, primary_key=True)
email = db.Column(db.String(100), unique=True, nullable=False)
name = db.Column(db.String(100), nullable=False)
password = db.Column(db.String(100), nullable=False)
personal_guide = db.relationship('personal_guide')
def __init__(self, id, email, password):
self.id = id
self.email = email
self.password = password

class personal_guide(db.Model):
id = db.Column(db.Integer, primary_key=True)
content = db.Column(db.Text)
user_id = db.Column(db.Integer, db.ForeignKey('users.id'))
def __init__(self, id, content, user_id):
self.id = id
self.content = content
self.user_id = user_id

Вот мой файлview.py (я использую Blueprint — аутентификацию и представления вместо приложения):

Код: Выделить всё

@views.route('/', methods=["GET", "POST"])
@login_required
def homepage():
if request.method == "POST":
user_input = request.form.get('user_input')
response = str(moondream(user_input))
print(response) #for debugging purpose
print(current_user.id) #for debugging purpose
try:
user_info = personal_guide(content=response, user_id=current_user.id)
db.session.add(user_info)
db.session.commit()
ai = personal_guide.query.filter_by(content=response).first()
print(f"Retrieved guide content: {ai.content}, for user_id: {ai.user_id}") #for debugging purpose
flash("Content saved", category='success')
except Exception as e:
print(f"Error: {e}")
flash("Error saving content", category='failure')

return render_template('homepage.html', response=ai.content)
return render_template('homepage.html', current_user=current_user)
Я проверяю слово в слово и пытаюсь распечатать ответ и user_id, кажется, все работает правильно. Я не могу понять, в чем проблема.
И в результате ответ на содержимое модели никогда не сохраняется. Пожалуйста, помогите мне! Я был бы очень признателен за это! Спасибо большое.

Подробнее здесь: https://stackoverflow.com/questions/790 ... eerror-per
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»