链接到几个指定模型之一的django foreignkey

django-multiforeignke的Python项目详细描述


django多重点火键

Django ForeignKey,链接到几个指定型号中的一个:

classComment(models.Model):user=models.ForeignKey(User)text=models.TextField()# users may leave comments for blog posts, articles or votingsobject=MultiForeignKey(Post,Article,Voting)

与^ {TT1}$不同,该字段使用本机数据库外键,并提供最大速度和可靠性。

警告

这是一个初步的alpha版本,很可能没有完全按照广告的那样工作。我不得不在未完成的情况下发布它,因为我必须在我的项目中使用它。

安装

pip install django-multiforeignkey

用法

multiforeignkey添加到INSTALLED_APPS

# settings.pyINSTALLED_APPS=[...'multiforeignkey',]

在模型中添加一个字段:

# comments/models.pyfrommultiforeignkey.modelsimportMultiForeignKeyclassComment(models.Model):user=models.ForeignKey(User)text=models.TextField()# users may leave comments for blog posts, articles or votingsobject=MultiForeignKey(Post,Article,Voting)

创建相应的数据库表:

./manage.py makemigrations && ./manage.py migrate

将新字段用作真正的数据库字段:

comment=Comment.objects.filter(object=post)assertcomment.objectispostcomment.object=votingassertcomment.objectisvotingcomment.save()

或使用特定子字段:

comment=Comment.objects.filter(post=post)assertcomment.postispostassertcomment.articleisNoneassertcomment.votingisNonecomment.voting=votingassertcomment.postisNoneassertcomment.articleisNoneassertcomment.votingisvotingcomment.save()

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
为@Nonnull注释参数编写java单元测试   对于JAVA,如何从它自己的类调用插入排序来将数组分类到一个单独的类中?   Java中嵌套SQL查询的字符串解析   java在所有带有特定注释的方法上调用带注释的方面   在Java中将base64转换为PDF   无法在Android上强制转换java getApplicationContext()   雅加达ee Java ee:如何获取我的应用程序的URL?   IntelliJ:如何导入的文件夹。java文件作为库?   多线程Java(FX)在播放一种声音的同时,播放另一种声音   网络爬虫我需要将proto3版本中protobuf生成的java代码添加到nutch 1.7中   使用JAXRS注释资源的java Restlet客户端   java如何查找给定月份的日期范围   java Minecraft Bukkit插件:我的小游戏传送机不工作   Java Excel搜索和数组列表工作不正常