草庐IT

SQLALCHEMY_TRACK_MODIFICATIONS

全部标签

python - 如何在 flask-sqlalchemy 中建立三向多对多关系

在flask-sqlalchemy中设计三向多对多的正确方法是什么?假设我有用户、团队和角色。用户被分配到团队。当分配给一个团队时,用户也会在该团队中分配一个角色。frommyappimportdbclassUser(db.Model):id=db.Column(db.Integer,primary_key=True)name=db.Column(db.String(128),unique=True)def__init__(self,name):self.name=namedef__repr__(self):return""%self.nameclassTeam(db.Model):i

python - SQLAlchemy:在内部格式和数据库格式之间来回转换列值

在我的数据库中,我有一些列以某种奇怪的格式存储数据。由于数据库也被其他代码使用,我无法更改数据格式。例如,一种奇怪的格式是将时间值表示为类似23:42:30的字符串。我想要一些魔法,让我始终在python端使用datetime.time对象。一个非常简单的解决方案是这样的:col_raw=Column('col',String(7))@propertydefcol(self):returndatetime.strptime(self.col_raw,'%H:%M:%S').time()@col.setterdefcolself,t):self.col_raw=t.strftime('%

python - Flask-Sqlalchemy + Sqlalchemy-searchable 返回空列表

第一次访问该网站,大家好,在此先感谢。长期潜伏者和新手。我正在使用Flask-SqlAlchemy和SqlAlchemy-Searchable(文档->https://sqlalchemy-searchable.readthedocs.org/en/latest/index.html)在Flask中开发网络应用程序。出于我无法弄清楚的原因,当我尝试与文档页面上显示的代码类似示例时:fromflaskimportFlaskfromflask.ext.sqlalchemyimportSQLAlchemy,BaseQueryfromsqlalchemy_searchableimportSea

python - 我可以检查 sqlalchemy 查询对象以查找已连接的表吗?

我正在尝试以编程方式构建搜索查询,为此,我正在加入一个表。classUser(db.Model):id=db.Column(db.Integer(),primary_key=True)classTag(db.Model):id=db.Column(db.Integer(),primary_key=True)user_id=db.Column(db.Integer(),db.ForeignKey('user.id'))title=db.Column(db.String(128))description=db.Column(db.String(128))这是一个有点人为的例子-我希望它有意

python - SQLAlchemy JSON TypeDecorator 未正确保存,session.commit() 有问题

我的models.py文件有两个模型,User和Job。每个作业都将关联多个用户。一个用户可以与多个作业相关联。我需要能够执行类似job.getUsers()的操作-->用户对象列表我尝试使用TypeDecorators在我的Job表中存储一个JSONint数组。每个int代表一个用户的pk,稍后我可以使用它在数据库中找到正确的行。乍一看,这工作正常,但我遇到了一些奇怪的错误(帖子底部,在我的代码之后)。classJson(TypeDecorator):impl=Stringdefprocess_bind_param(self,value,dialect):returnjson.dum

python - 如何使用 Factory Boy 和 Flask-SQLAlchemy 设置依赖工厂?

在Flask-SQLAlchemy和外键约束下使用factoryboy的正确方法是什么?考虑以下FlaskSQLAlchemy模型设置:#coding=utf-8fromflaskimportFlaskfromflask.ext.sqlalchemyimportSQLAlchemyapp=Flask(__name__)app.config['SQLALCHEMY_DATABASE_URI']='sqlite:///test.db'db=SQLAlchemy(app)#------------------------------#SQLAlchemyTableModels#-------

python - sqlAlchemy 中的求和字段

我最近升级到最新版本的sqlalchemy,我的一些代码不再有效。我很难找到修复它的方法,需要帮助。以前查询是这样显示的。self.db.query(Drive).filter(Drive.package_id==package.package_id)\.filter(Drive.wipe_end!=None).sum(Drive.wipe_end-Drive.wipe_start)这在检索某些持续时间的总和之前有效,但现在我收到以下错误:'Query'objecthasnoattribute'sum'我所做的任何谷歌搜索都会得到几年前的信息。 最佳答案

python - SQLAlchemy 在删除表时被阻止

该代码是从sqlahcmey的ormtutorial中逐步复制的,除了最后一行,我打算在查询后删除所有表。但是程序阻塞在Base.metadata.drop_all(bind=engine),下面是当时MySQL的状态(取自MySQLWorkbench):如标记线所示,droptable进程由于表元数据锁定,我认为元数据锁定是由result=session.query(User).all()引起的,因为如果删除该行程序不会阻塞,但我仍然不知道原因。所以我的问题是:为什么会这样,如何避免阻塞#!/usr/bin/envpython#-*-coding:utf-8-*-fromsqlalc

python - SQLAlchemy:获取具有最新日期的对象

如何在表中查询具有最新表的对象?我有一张tableclassTicker(Base):updated=Column('updated',DATETIME,index=False,nullable=False,primary_key=True)high=Column('high',FLOAT,index=False,nullable=False)我正在尝试找出如何获取具有最新更新字段的对象?目前我正在做以下事情:maxdate=db_session.query(func.max(Ticker.updated)).first()[0]Ticker.query.filter(Ticker.u

python - 使用 flask-wtf 和 sqlalchemy 生成动态表单

我有一个网络应用程序,它允许用户创建自己的字段,以便稍后在表单中呈现。我有一个像这样的模型Formfield:classFormfield(db.Model):id=db.Column(db.Integer,primary_key=True)form_id=db.Column(db.Integer,db.ForeignKey('formbooking.id'))label=db.Column(db.String(80))placeholder_text=db.Column(db.String(80))help_text=db.Column(db.String(500))box_chec