Python Forum

Full Version: Bad Request error Method Not Allowed The method is not allowed for the requested URL.
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
I am working on python-flask blog webapp. In the blog, I want to give a feedback option for the user. But whenever I clicked on the feedback link I got an error in the browser-
Bad request error:
Method Not Allowed
The method is not allowed for the requested URL.

here is my python code myblog.py for feedback form
@app.route('/feedback', methods=['POST'])
def feedback():
    db = get_db()
    db.execute('insert into feedback (name, email, feedback) values(?, ?, ?)',
                  [request.form['name'], request.form['email'], request.form['feedback']])
    db.commit()
    return redirect(url_for('index'))
Here is html code to access feedback form 'feedback.html'
<div class="container">
      <div class="row">
        <div class="col-lg-8 col-md-10 mx-auto">
          <form action="{{ url_for('feedback') }}" method='post' class=feedback>
            <div class="control-group">
              <div class="form-group floating-label-form-group controls">
                <label>Name</label>
                <input type="text" class="form-control" placeholder="Name" name="name" id="name" required data-validation-required-message="Please enter a title.">
                <p class="help-block text-danger"></p>
              </div>
            </div>
            <div class="control-group">
              <div class="form-group floating-label-form-group controls">
                <label>Email</label>
                <input type="text" class="form-control" placeholder="Email" name="email" id="email" required data-validation-required-message="Please enter your email address.">
                <p class="help-block text-danger"></p>
              </div>
            </div>
            <div class="control-group">
              <div class="form-group col-xs-12 floating-label-form-group controls">
                <label>Feedback</label>
                <textarea class="form-control" row="5" placeholder="feedback" name="feedback" id="feedback" required data-validation-required-message="Please enter your phone number."></textarea>
                <p class="help-block text-danger"></p>
              </div>
            </div>
            <br>
            <div id="success"></div>
            <div class="form-group">
              <button type="submit" class="btn btn-secondary" id="sendMessageButton">Send</button>
            </div>
          </form>
        </div>
      </div>
    </div>
here is database code where all feedback to be stored
[sql]
drop table if exists entries;
create table entries (
id integer primary key autoincrement,
title text not null,
'text' text not null,
author text not null
);

drop table if exists feedback;
create table feedback (
id integer primary key autoincrement,
name text not null,
email text not null,
feedback text not null
);

[/sql]