Я импортирую sqlalchemy, но у меня есть эта ошибка sqlalchemy.exc.OperationalError

#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. да, я могу это проверить