PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

Flask:sqlalchemy.exc.ProgrammingError:(psycopg2.ProgrammingError) gli utenti della relazione non esistono

Stai inizializzando il database due volte.

Suggerirei di dare un'occhiata a questo:http://flask.pocoo .org/docs/0.10/patterns/sqlalchemy/

In sostanza, ti consigliamo di dividere le cose in pochi file in più per evitare problemi di importazione e rendere le cose un po' più pulite. Ho fatto quanto segue che sembra funzionare. Nota, ho usato SQLite, dal momento che non ho Postgres installato su questa scatola.

app.py

from flask import Flask
app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:////test11.db'

modelli.py

from flask.ext.sqlalchemy import SQLAlchemy
from app import app
db = SQLAlchemy(app)

class User(db.Model):
    __tablename__ = 'users'
    uid = db.Column(db.Integer, primary_key = True)
    firstname = db.Column(db.String(100))
    lastname = db.Column(db.String(100))
    email = db.Column(db.String(120), unique=True)
    pwdhash = db.Column(db.String(54))

def __init__(self, firstname, lastname, email, password):
    self.firstname = firstname.title()
    self.lastname = lastname.title()
    self.email = email.lower()
    self.set_password(password)

def set_password(self, password):
    self.pwdhash = (password)

def check_password(self, password):
    return password

rotte.py

from models import User, db

db.create_all()
db.session.commit()

admin = User('admin', '[email protected]', 'admin1', '[email protected]')
guest = User('admi2', '[email protected]', 'admin', '[email protected]')
db.session.add(admin)
db.session.add(guest)
db.session.commit()

Consiglio vivamente di guardare alcuni tutorial! Ne avrai bisogno:dovresti conoscere le vulnerabilità web, le migliori pratiche e così via.