Я хочу, чтобы обновить свою базу данных с помощью кода пропущено приводится ниже:Как избежать вставки дубликатов вставки?
@app.route('/update')
def update():
os.system('python update.py')
return redirect(url_for('home'))
Но когда я использую gunicorn -w 4
, чтобы запустить приложение и нажмите на URL http://127.0.0.1:5000/update
один раз, он будет работать python update.py
дважды. Один и тот же контент следует вставлять в базу данных дважды. Я думаю, что это может быть вызвано многократной обработкой стрельбы.
Я также хочу, чтобы колонка была уникальной, но она мне не подходит.
Как я могу решить проблему? И не могли бы вы сказать мне несколько хороших решений для автоматического обновления базы данных каждый день.
Что такое writedatabase? Вы вызываете один и тот же URL более одного раза? Это ваш оригинальный отступ? – wonderb0lt
Если у вас действительно есть инструкция import в вашем цикле, означает, что вы импортируете writedatabase каждый раз, а не один раз? Должно ли это быть вне цикла? а затем просто используйте 'h' в цикле. – Craicerjack
для этого у вас должен быть уникальный столбец, чтобы база данных давала ошибку дублирования –