Python 我有2个函数,每个函数都有自己的SQLAlchemy表类。如何从一个表访问另一个表?
代码如下:Python 我有2个函数,每个函数都有自己的SQLAlchemy表类。如何从一个表访问另一个表?,python,flask-sqlalchemy,Python,Flask Sqlalchemy,代码如下: """Class for user and bookmark template""" # from app import d_b def get_users(d_b): '''This function is designed to define class User for d_b''' class Users(d_b.Model): id = d_b.Column(d_b.String(
"""Class for user and bookmark template"""
# from app import d_b
def get_users(d_b):
'''This function is designed to define class User for d_b'''
class Users(d_b.Model):
id = d_b.Column(d_b.String(80), primary_key=True)
email = d_b.Column(d_b.String(80), unique=True, nullable=False)
firstName = d_b.Column(d_b.String, unique=False, nullable=False)
familyName = d_b.Column(d_b.String(80), unique=False, nullable=False)
imageURL = d_b.Column(d_b.String(80), unique=False, nullable=True)
def __repr__(self):
'''This function returns the users class'''
return '<User %r>' % self.id
return Users
def get_bookmarks(d_b):
'''This function defines the Bookmarks Class in our d_b.'''
class Bookmark(d_b.Model):
"""Can create a Bookmark with username and event_id"""
id = d_b.Column(d_b.String(80), d_b.ForeignKey('Users.id'),
primary_key=True, nullable=False)
event_id = d_b.Column(d_b.String(80), unique=False, nullable=False)
def __repr__(self):
return '<Bookmark %r>' % self.id
return Bookmark
“用户和书签模板的类”
#从应用程序导入d_b
def get_用户(d_b):
''此函数旨在为d_b''定义类用户'
类别用户(d_b.模型):
id=d_b.列(d_b.字符串(80),主键=True)
email=d_b.列(d_b.字符串(80),unique=True,nullable=False)
firstName=d_b.Column(d_b.String,unique=False,nullable=False)
familyName=d_b.列(d_b.字符串(80),unique=False,nullable=False)
imageURL=d_b.列(d_b.字符串(80),unique=False,nullable=True)
定义报告(自我):
''此函数返回用户类''
返回“%self.id”
返回用户
def get_书签(d_b):
''此函数定义d_b中的Bookmarks类。''
类别书签(d_b.模型):
“”“可以使用用户名和事件\u id创建书签”“”
id=d_b.Column(d_b.String(80),d_b.ForeignKey('Users.id'),
主键=真,可空=假)
事件id=d_b.列(d_b.字符串(80),unique=False,nullable=False)
定义报告(自我):
返回“%self.id”
返回书签
如何从“获取用户”功能访问用户。我没有创建这个代码。这是我的组成员的,如果我试图去掉函数而只使用这两个类,那么我的应用程序的主python文件会抛出一个错误“module models.py has no member Users”
我怎样才能避开这件事?我不想对此代码进行重大更改。我建议您拥有一个处理所有数据库需要的
models.py
文件和一个单独的路由
模块,您可以从中创建访问表的函数(尽管这不是您真正想要的)。这不是一个重大的改变,而是按照关注点分离的原则重新组织代码。