草庐IT

database-relations

全部标签

python - 带有 SQLAlchemy 的 Pyramid : scoped or non-scoped database session

对于旧版本的Pyramid,sqlalchemysession的设置是使用类似于此的scooped_session完成的DBSession=scoped_session(sessionmaker(autoflush=True,expire_on_commit=False,extension=zope.sqlalchemy.ZopeTransactionExtension())但是我看到较新的教程以及Pyramiddocs在DBSession附加到请求对象的情况下,“提升”没有线程本地化的sqlalchemy。“旧”方式是否已被打破?无线程本地化的优势是什么?

python - 如何减少 django 模型 has_relation 方法中的查询?

这里有两个示例Django模型。特别注意has_pet方法。classPerson(models.Model):name=models.CharField(max_length=255)defhas_pet(self):returnbool(self.pets.all().only('id'))classPet(models.Model):name=models.CharField(max_length=255)owner=models.ForeignKey(Person,blank=True,null=True,related_name="pets")这里的问题是has_pet方法总

python - django: select_related() 在一个已经存在的对象上?

如果我正在使用django检索对象,我可以使用.select_related()指示django也获取所有外键对象,即:obj=ModelClass.objects.select_related().get(id=4)#1dbhitfoo=obj.long.chain.of.stuff#nodbhit如果我已经有了obj,但还没有.select_related(),那就是:defdoit(obj):obj.long.chain.of.stuff#4dbhits有没有办法让django填写它所有的外键关系?像这样的东西:defdoit(obj):obj.magic()#1dbhitobj

python - 在日历 : CPU vs Database 中重复 "events"

我正在从头开始构建一个日历系统(要求,因为我正在使用一种特殊类型的日历以及公历),我需要一些逻辑方面的帮助。我正在用Django和Python编写应用程序。本质上,我遇到的逻辑问题是如何尽可能巧妙地保留尽可能少的对象,而不会耗尽CPU周期选项卡。我觉得多态性可以解决这个问题,但我不确定如何在这里表达它。我有两个基本的事件子集,重复事件和一次性事件。重复事件会有订阅者,人们会收到有关他们的更改的通知。例如,如果类(class)被取消或转移到不同的地址或时间,订阅的人需要知道这件事。有些事件每天都会发生,直到时间结束,不会被编辑,并且“只是发生”。问题是,如果我有一个对象来存储事件信息及其

python - Django:从模型的相关集合中获取相关集合

classBook(models.Model):#fieldsclassChapter(models.Model):book=models.ForeignKey(Book)classPage(models.Model):chapter=models.ForeignKey(Chapter)我想要书A的所有页面,可能不需要循环每一章来获取页面。book=Book.objects.get(pk=1)pages=book.chapter_set.page_set#?!? 最佳答案 你不能那样做。chapter_set是一个查询集,它没有属性

python - django.core.exceptions.ImproperlyConfigured : 'django_mongodb_engine' isn't an available database backend

我无法正确运行djangomongo引擎。我在settings.py中的数据库条目是DATABASES={'default':{'ENGINE':'django_mongodb_engine','NAME':'local',}}我的pipfreeze结果是Django==1.8.2django-mongodb-engine==0.5.2djangotoolbox==1.6.2pymongo==3.0.2运行时出错pythonmanage.pyrunserver是django.core.exceptions.ImproperlyConfigured:'django_mongodb_eng

python - Django ORM - 关于 Router.allow_relation() 的困惑

在新版Django的文档中,文本中的内容与显示的代码之间存在歧义。在描述多数据库配置的部分中谈到了路由器配置,并且有一个方法:allow_relation(obj1,obj2,**hints)ReturnTrueifarelationbetweenobj1andobj2shouldbeallowed,Falseiftherelationshouldbeprevented,orNoneiftherouterhasnoopinion.Thisispurelyavalidationoperation,usedbyforeignkeyandmanytomanyoperationstodeter

python - Django/Python : Update the relation to point at settings. AUTH_USER_MODEL

我是Python和Django的新手,但我需要在我的服务器上安装testbedserver-software(为此我遵循tutorial)。现在我在运行以下命令时遇到了麻烦:pythonmanage.pysyncdb显示以下错误:CommandError:Oneormoremodelsdidnotvalidate:menu.bookmark:'user'definesarelationwiththemodel'auth.User',whichhasbeenswappedout.Updatetherelationtopointatsettings.AUTH_USER_MODEL.dash

IDEA连接Database报错Driver class ‘com.mysql.cj.jdbc.Driver‘ not found Driver files are not downloaded.

报错如下图:解决:1.根据步骤查看下图,3的位置会出现缺少driver,和download字样。直接下载最新版,然后重新配置2.重新配置

python - 从 Python 解释器运行时获取 "ImportError: attempted relative import with no known parent package"

我正在使用Flask创建模块化应用blueprints特征。结果,我的目录结构是这样的:project__init__.pyconfig.pymould.pymodules__init__.pycore__init__.pycore.pydb.pymodels.py不要将此处的模块目录与Python模块混淆,它们用于为我的项目提供模块化结构(核心模块、foo模块、bar模块等)。现在,模块目录中的每个文件夹(以及其中的同名模块,例如core.core)都动态导入到我的主flask应用程序(mould.py)中这样做:foriteminos.listdir("modules"):ifno