def feedback(request): if request.method == 'POST': form = FeedBackForm(request.POST) if form.is_valid(): cd = form.cleaned_data s = cd['subject'] if s == 'need': need = Need.objects.create(author=request.user, description=cd['text']) need.save() elif s == 'thanks': thank = Thank.objects.create(author=request.user, description=cd['text']) thank.save() elif s == 'ask': ask = Ask.objects.create(author=request.user, description=cd['text']) ask.save() elif s == 'witness': witness = Witness.objects.create(author=request.user, description=cd['text']) witness.save() subject, from_email, to = cd['subject'], '*****@*****.**', '*****@*****.**' text_content = request.user.email + ':\n' + cd['text'] msg = EmailMultiAlternatives(subject, text_content, from_email, [to]) msg.send() return HttpResponseRedirect(reverse('index')) else: form = FeedBackForm() return HttpResponseRedirect(reverse('index'))
def feedbac_form(username): if "username" not in session or username != session['username']: raise Unauthorized() form = FeedBackForm() if form.validate_on_submit(): title = form.title.data content = form.content.data feedback = Feedback( title=title, content=content, username=username, ) db.session.add(feedback) db.session.commit() return redirect(f"/users/{feedback.username}") else: form = FeedBackForm() return render_template("feedback.html", form=form)
def forbidden(request): if request.method == 'POST': form = FeedBackForm(request.POST) else: form = FeedBackForm() context = {'form': form} return render(request, 'forbidd.html', context)
def private(request, key=''): if request.method == 'POST': form = FeedBackForm(request.POST) else: form = FeedBackForm() tasks = Task.objects.filter(private=True).all() video = Task.objects.filter(private=True).first() context = {'tasks': tasks, 'form': form, 'video': video} return render(request, 'private.html', context)
def index(request, key=''): if not key: video = Task.objects.first() #return HttpResponseRedirect(reverse('index', kwargs={'key': 'Lesson1'})) else: video = Task.objects.filter(title=key).first() if request.method == 'POST': form = FeedBackForm(request.POST) else: form = FeedBackForm() #video = Task.objects.filter(title=key).first() tasks = Task.objects.filter(private=False).all() context = {'tasks': tasks, 'form': form, 'video': video} return render(request, 'index.html', context)
def add_feedback(username): user = User.query.get_or_404(username) form = FeedBackForm() if form.validate_on_submit() and session['username'] == user.username: session['username'] = user.username title = form.title.data content = form.content.data feedback = FeedBack(title=title, content=content, username=username) db.session.add(feedback) db.session.commit() return redirect(f'/users/{username}') else: return render_template('feedback_form.html', user=user, form=form)
def edit_feedback(feedback_id): feedback = FeedBack.query.get_or_404(feedback_id) form = FeedBackForm(obj=feedback) username = feedback.user.username session['username'] = username if form.validate_on_submit() and session['username'] == username: session['username'] = user.username feedback.title = form.title.data feedback.content = form.content.data db.session.commit() return redirect(f'/users/{username}') else: return render_template('feedback_form.html', form=form, feedback=feedback)
def feed_back(): form = FeedBackForm(request.form) if request.method == 'POST' and form.validate_on_submit(): name = form.name.data email = form.email.data feed_type = form.select.data message = form.message.data f = feedback(name, email, feed_type, message) db.session.add(f) db.session.commit() flash( 'Thank You! Your response has been saved! We will get back to you soon.', 'success') return render_template('feedback.html', title="ORM - Feedback", form=form) return render_template('feedback.html', title="ORM - Feedback", form=form)
def write_contact(request): if request.method == 'GET': firstTitle = u'留下你的建议' firstTitle_content = u'可以报告BUG,提出需求和改进点。:D' return render(request, 'feedback_contact.html', { 'firstTitle': firstTitle, 'firstTitle_content': firstTitle_content }) if request.method == 'POST': feedback_form = FeedBackForm(request.POST) if feedback_form.is_valid(): feedback_form.save() firstTitle = u'提交成功' firstTitle_content = u'即将跳转至主页...' return render( request, 'feedback_success.html', { 'firstTitle': firstTitle, 'firstTitle_content': firstTitle_content, 'next_url': '/' }) else: firstTitle = u'留下你的建议' reply_dict = {} error_dict = feedback_form.errors reply_dict['feedback_content'] = feedback_form.cleaned_data.get( "feedback_content", error_dict.get("feedback_content", [""])[0]) reply_dict['user_email'] = feedback_form.cleaned_data.get( "user_email", error_dict.get("user_email", [""])[0]) reply_dict['errors'] = 1 if len(error_dict) > 0 else 0 firstTitle_content = u'可以报告BUG,提出需求和改进点。:D' return render( request, 'feedback_contact.html', { 'firstTitle': firstTitle, 'firstTitle_content': firstTitle_content, 'next_url': '/', 'reply_dict': reply_dict })
def new_feedback(username): """Show add-feedback form and process it.""" form = FeedBackForm() if form.validate_on_submit(): title = form.title.data content = form.content.data feedback = Feedback( title=title, content=content, username=username, ) db.session.add(feedback) db.session.commit() return redirect(f"/users/{feedback.username}") else: return render_template("new_feedback.html", form=form)