Du initialiserer din database to gange.
Jeg vil foreslå, at du tager et godt kig på dette:http://flask.pocoo .org/docs/0.10/patterns/sqlalchemy/
Grundlæggende vil du gerne dele tingene op i et par flere filer for at forhindre importproblemer og gøre tingene lidt mere rene. Jeg har lavet nedenstående, som ser ud til at virke. Bemærk, jeg har brugt SQLite, da jeg ikke har Postgres installeret på denne boks.
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
routes.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()
Jeg vil helt klart anbefale at se nogle tutorials igennem! Du får brug for det:du bør lære om websårbarheder, bedste praksis og så videre.