Исправлены ошибки удаления постов

This commit is contained in:
mrmur 2022-05-03 19:46:50 +05:00
parent a74fd4af62
commit 6e69eb608b

35
main.py
View File

@ -460,19 +460,23 @@ def delete_quest(id):
@app.route('/add_question', methods=['GET', 'POST']) @app.route('/add_question', methods=['GET', 'POST'])
def add_question(): def add_question():
if current_user.is_authenticated: if current_user.is_authenticated:
que = AddQuest() if current_user.role == 'admin':
session = db_session.create_session() que = AddQuest()
if que.validate_on_submit(): session = db_session.create_session()
if que.quest.data in list(map(lambda x: x.quest, session.query(Quest).all())): if que.validate_on_submit():
return render_template('add_question.html', message='Такой вопрос уже есть!', title='Добавить вопрос', if que.quest.data in list(map(lambda x: x.quest, session.query(Quest).all())):
form=que) return render_template('add_question.html', message='Такой вопрос уже есть!',
new_que = Quest() title='Добавить вопрос',
new_que.quest = que.quest.data.strip() form=que)
session.add(new_que) new_que = Quest()
session.commit() new_que.quest = que.quest.data.strip()
que.quest.data = '' session.add(new_que)
return render_template('add_question.html', message='', title='Добавить вопрос', form=que, session.commit()
question=session.query(Quest).all()) que.quest.data = ''
return render_template('add_question.html', message='', title='Добавить вопрос', form=que,
question=session.query(Quest).all())
else:
return redirect('/')
else: else:
return redirect('/') return redirect('/')
@ -552,8 +556,7 @@ def post_deleted(id):
if find_post: if find_post:
if find_post.author == current_user.id or current_user.role == 'admin': if find_post.author == current_user.id or current_user.role == 'admin':
session = db_session.create_session() session = db_session.create_session()
pos = session.query(DiaryPost).filter(DiaryPost.id == id, pos = session.query(DiaryPost).filter(DiaryPost.id == id).first()
DiaryPost.author == current_user.id).first()
if pos: if pos:
if pos.photo: if pos.photo:
os.remove(pos.photo[3:]) os.remove(pos.photo[3:])
@ -752,7 +755,7 @@ def confirmation():
about=form.about.data, about=form.about.data,
email=form.email.data, email=form.email.data,
role='user', role='user',
photo='../static/img/Икона.png' photo='../static/img/None_logo.png'
) )
user.set_password(form.password.data) user.set_password(form.password.data)
session.add(user) session.add(user)