sql >> データベース >  >> RDS >> PostgreSQL

フラスコ:sqlalchemy.exc.ProgrammingError:(psycopg2.ProgrammingError)リレーションユーザーが存在しません

    データベースを2回初期化しています。

    これをよく見てみることをお勧めします: http://flask.pocoo .org / docs / 0.10 / pattern / sqlalchemy /

    基本的に、インポートの問題を防ぎ、物事をもう少しきれいにするために、物事をさらにいくつかのファイルに分割する必要があります。私はうまくいくように見える以下を行いました。このボックスにPostgresがインストールされていないため、SQLiteを使用していることに注意してください。

    app.py

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

    models.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
    

    routers.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()
    

    私は間違いなくいくつかのチュートリアルを見ることをお勧めします!あなたはそれを必要とするでしょう:あなたはウェブの脆弱性、ベストプラクティスなどについて学ぶべきです。



    1. mysqlから画像をJSON解析し、listviewにデータを入力する方法

    2. パフォーマンスの神話:文字列列のサイズを大きくする

    3. SQLiteからOracleへ

    4. nightwatchカスタムコマンドコールバック