使用postgres将带有sqlite的烧瓶转换为Flask

时间:2018-02-16 05:01:10

标签: python postgresql sqlite flask flask-sqlalchemy

我在本地开发了一个简单的烧瓶应用程序,我在那里使用SQLite数据库来执行登录。现在我已经将它部署到Heroku并意识到Heroku不支持SQLite,这就是为什么现在我需要将它更改为另一个数据库。

这是我用SQLite做的事情:

这是我创建表格的方式:

from sqlalchemy import create_engine
from sqlalchemy import Column, Date, Integer, String
from sqlalchemy.ext.declarative import declarative_base

engine = create_engine('sqlite:///tutorial.db', echo=True)
Base = declarative_base()

# Create USER model

class User(Base):
    __tablename__ = "users"
    id = Column(Integer, primary_key=True)
    username = Column(String)
    password = Column(String)

    def __init__(self, username, password):
        self.username = username
        self.password = password

Base.metadata.create_all(engine)

以下是我如何使用SQlite登录:

from sqlalchemy.orm import sessionmaker
engine = create_engine('sqlite:///tutorial.db', echo=True)

@app.route('/login', methods=['GET', 'POST'])
def lodadata():
    POST_USERNAME = str(request.form['uid'])
    POST_PASSWORD = str(request.form['upass'])

    session = sessionmaker(bind=engine)
    s = session()
    query = s.query(User).filter(User.username.in_([POST_USERNAME]),
                             User.password.in_([POST_PASSWORD]))
    result = query.first()
    if result:
        session['logged_in'] = True
    else:
        flash('Something wrong about Login Detail')

如何将我的数据库更改为Heroku支持的另一个数据库?

请帮帮我!

提前致谢!

0 个答案:

没有答案