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