#python #python-3.x #sqlite #flask
Вопрос:
Я новичок в flask, сейчас смотрю курс на YouTube, я все делаю правильно, но у меня эта ошибка на одной странице:
sqlalchemy.exc.OperationalError
sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) no such column: users.date_added
[SQL: SELECT users.id AS users_id, users.name AS users_name, users.email AS users_email, users.date_added AS users_date_added
FROM users ORDER BY users.date_added]
(Предыстория этой ошибки по адресу: https://sqlalche.me/e/14/e3q8)
Это код на sublime (маршрут):
app.route('/user/add', methods=['GET','POST'])
def add_user():
name=None
form=UserForm()
if form.validate_on_submit():
user=Users.query.filter_by(email=form.email.data).first()
if user is None:
user=Users(name=form.name.data,email=form.email.data)
db.session.add(user)
db.session.commit()
name=form.name.data
form.name.data=''
form.email.data=''
flash('User added ')
our_users=Users.query.order_by(Users.date_added)
return render_template('add_user.html' ,form=form,name=name,our_users=our_users)
add_user.html код страницы:
{% if name%}
<h1>Hello {{name}}!!</h1>
{% else %}
<h1>User list:</h1>
<br>
<form method="POST" >
{{form.hidden_tag()}}
{{form.name.label()}}
{{form.name()}}
<br>
{{form.email.label()}}
{{form.email()}}
<br>
<br>
{{form.submit(class="btn btn-primary")}}
</form>
{% for our_user in our_users %}
{{our_user.id}} . {{our_user.name
}} - {{our_user.email}}<br>
{%endfor%}
{%endif%}
Комментарии:
1. Вы добавили
date_added
в базу данных? либо вручную, либо укажите текущее время по умолчанию?2. да, я добавляю его в базу данных » date_added=db.Столбец(db.DateTime, по умолчанию=datetime.utcnow)»
3. вставляются ли значения по умолчанию, как ожидалось? например, можете ли вы проверить базу данных?
4. да, я могу это проверить