Python - Приложение Flask SQLAlchemy не запущено - «Этот сайт недоступен» - PullRequest
0 голосов
/ 06 декабря 2018

Итак, я пытался учиться, SQLAlchemey.Я скопировал код из учебника https://www.tutorialspoint.com/flask/flask_sqlalchemy.htm

В нем была ошибка отступа, поэтому я исправил ее.Кроме того, я добавил run(use_reloader=False), потому что он не загружался.Но теперь он показывает:

    This site can’t be reached The webpage at http://127.0.0.1:6000/ might be temporarily down or it may have moved permanently to a new web address.
ERR_UNSAFE_PORT

в браузере.

Полный код

from flask import Flask, request, flash, url_for, redirect, render_template
from flask_sqlalchemy import SQLAlchemy

app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///students.sqlite3'
app.config['SECRET_KEY'] = "random string"

db = SQLAlchemy(app)

class students(db.Model):
   id = db.Column('student_id', db.Integer, primary_key = True)
   name = db.Column(db.String(100))
   city = db.Column(db.String(50))
   addr = db.Column(db.String(200)) 
   pin = db.Column(db.String(10))

   def __init__(self, name, city, addr,pin):
       self.name = name
       self.city = city
       self.addr = addr
       self.pin = pin

@app.route('/')
def show_all():
   return render_template('show_all.html', students = students.query.all() )

@app.route('/new', methods = ['GET', 'POST'])
def new():
   if request.method == 'POST':
      if not request.form['name'] or not request.form['city'] or not request.form['addr']:
         flash('Please enter all the fields', 'error')
      else:
         student = students(request.form['name'], request.form['city'],
            request.form['addr'], request.form['pin'])

         db.session.add(student)
         db.session.commit()
         flash('Record was successfully added')
         return redirect(url_for('show_all'))
   return render_template('new.html')

if __name__ == '__main__':
   db.create_all()
   app.run(port=6000, use_reloader=False, debug = True)

1 Ответ

0 голосов
/ 06 декабря 2018

Попробуйте посетить http://localhost:5000/, поскольку это порт по умолчанию для порта включен

...