Flask循环引用的问题

文件结构:

——app.py

——m_users.py

——external.py

app.py

******

from flask import Flask

from common import external

from m_users import U12

from external import db

import external #导入配置文件

app = Flask(__name__) #Flask初始化

app.config.from_object(external) #初始化配置文件

#初始化数据库连接

db.init_app(app) 新增点

db = SQLAlchemy(app) 弃掉 出错点2

db.create_all() 循环引用 出错点1

改为

#手动创建应用上下文

with app.app_context():

db.create_all() #建立关系映射

@app.route('/')

#定义路由

def hello_world():

return 'Hello World!'

*******

m_users.py

########

from external import db

class U12(db.Model):

__table_args__ = {'extend_existing': True}

__table__ =db.Table('usser1234',db.metadata,db.Column('id',db.String(11), primary_key=True),

db.Column('country', db.String(20), default=None, nullable=False, comment="国家"),

db.Column('name', db.String(20), default=None, nullable=False, comment="用户姓名"),

db.Column('phone', db.String(20), default=None, nullable=False, comment="电话"))

def select(self,u_id):

result = db.session.query(self).filter(self.id == u_id).first()

return 'name:{0}'.format(result.name)

###########

external.py

………………

from flask_sqlalchemy import SQLAlchemy

db = SQLAlchemy()

# 设置mysql数据库

DIALECT = 'mysql'

# 使用pymysql驱动

DRIVER = 'pymysql'

# 账号

USERNAME = 'root'

# 密码

PASSWORD = 'root'

# 数据库服务器所在的IP地址

HOST = '127.0.0.1'

# 端口

PORT = '3308'

# 指定连接的数据库名

DATABASE = 'woni'

# 进行数据库连接的实例化

SQLALCHEMY_DATABASE_URI = "{}+{}://{}:{}@{}:{}/{}?charset = utf8".format(DIALECT, DRIVER,USERNAME,PASSWORD, HOST,PORT,DATABASE)

SQLALCHEMY_DATABASE_URI = "mysql+pymysql://root:root@localhost:3308/woni?charset=UTF8"

# 关闭动态跟踪

SQLALCHEMY_TRACK_MODIFICATIONS = False

# 查询时会显示原始SQL语句

SQLALCHEMY_ECHO = True

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值