Sql server Flask SQLAlchemy(mssql+;pyodbc)和具有蓝图的现有模型
我在python3.6环境中有以下烧瓶应用程序/文件夹结构:Sql server Flask SQLAlchemy(mssql+;pyodbc)和具有蓝图的现有模型,sql-server,flask,flask-sqlalchemy,pyodbc,Sql Server,Flask,Flask Sqlalchemy,Pyodbc,我在python3.6环境中有以下烧瓶应用程序/文件夹结构: site/ __init__.py models.py static/ templates/ dashboard/ index.html login/ index.html views/ __init__.py login.py config.py run.py 我的文件如下所示: run.py config.py 站点/初始化.py
site/
__init__.py
models.py
static/
templates/
dashboard/
index.html
login/
index.html
views/
__init__.py
login.py
config.py
run.py
我的文件如下所示:
run.py
config.py
站点/初始化.py
site/views/login.py
site/models.py
类用户(db.Model):
__table_uz=db.Model.metadata.tables['users']
定义报告(自我):
返回“%self.username”
我试图做的是连接并使用我的ms sql数据库中的一个现有模型,该模型名为user
我对Flask、Flask-SQLAlchemy、Blueprint和Python都是新手,我对如何在login.py中使用db.Model很感兴趣。如何在蓝图范例中实现这一点
任何帮助和指导都将非常感激,并感谢您在advanced中的帮助
问候,,
maki您可以在login.py中添加以下行:
from site import db
from site.models import User
要向数据库添加新用户,可以使用以下方法:
new_user = User()
db.session.add(new_user)
db.session.commit()
并将其添加到用户表中:
_tablename__ = 'user'
您需要按照
用以下内容替换现有内容:
SQLALCHEMY_DATABASE_URI : mysql://username:password@server_adress/db_name
对于用户身份验证,我可以建议您hello@Espoir,感谢您的快速回复,但是我在添加顶部的2行代码时遇到了一些错误<代码>类型错误:“immutabledict”对象不可调用文件“run.py”,第3行,从mis_站点导入应用程序文件“..\site_init_.py”,第29行,从mis_site.views导入登录文件“C:\Users\mark.manalo\dev\python36\mis site\mis site\views\login.py”,第5行,从mis_site.models导入用户文件“..\site\models\models.py”,第5行,类内用户(db.Model):文件“…\site\models.py”,第6行,在User table=db.Model.metadata.tables('users')TypeError:'immutabledict'对象不可调用这是否正确<代码>SQLALCHEMY_数据库_URI='驱动程序={SQL Server的ODBC驱动程序11};SERVER=myServer;数据库=myDB;TRUSTED_CONNECTION=yes'检查我是否编辑了我的答案,另外,为了帮助您解决所遇到的错误,请在此处查找有关uRI hi there@Espoir的更多信息!如何更改我的数据库URI以适应mssql+pyodc?谢谢
class User(db.Model):
__table__ = db.Model.metadata.tables['users']
def __repr__(self):
return '<User %r>' % self.username
from site import db
from site.models import User
new_user = User()
db.session.add(new_user)
db.session.commit()
_tablename__ = 'user'
SQLALCHEMY_DATABASE_URI : mysql://username:password@server_adress/db_name