- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
假设我有一个看起来像这样的模型 Issue
:
class Issue(models.Model):
title = models.CharField(max_length=100)
author = models.CharField(max_length=100)
text = models.TextField()
还有一个叫做 Comment
的,如下所示:
class Comment(models.Model):
issue = models.ForeignKey(Issue)
text = models.TextField()
number = models.AutoField()
我希望评论编号字段与问题相关。
这意味着每个问题都会有其单独的评论#1、评论#2、评论#3...等。
这可以在 Django 中完成吗?
最佳答案
如果您从 Comment 模型中删除了 number 字段并将其替换为 date_added 字段,您仍然可以查询数据库以按顺序提取与特定条目关联的所有评论。
class Comment(models.Model):
issue = models.ForeignKey(Issue)
text = models.TextField()
date_added = models.DateField(auto_now_add = True)
然后,如果您想获得与某个问题相关的所有评论:
i = Issue.object.get(pk=1) #pk = primary key id for whatever issue you want
comments_by_issue = i.comment_set.all().order_by('date_added')
现在您有一些可以通过索引位置引用的评论(例如,comments_by_issue[0] 将为您提供附加到该问题的第一条评论)。
该索引位置是我能想到的最接近您要查找的内容的方式。其他人提到了 comment.id,但这只是一个自动递增的整数,每条评论都会增加。添加到您系统中的第五条评论可能有 comment.id = 5,但它可能是附加到问题 2 的第一条评论 - 如果我没看错您的查询,在这种情况下拥有评论 ID 没有帮助。
这更像是一种解决方法,而不是直接的答案,但我希望它能有所帮助。
关于python - 基于外键的django autoincrement,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22875138/
SQLite Autoincrement(自动递增) SQLite 的 AUTOINCREMENT 是一个关键字,用于表中的字段值自动递增。我们可以在创建表时在特定的列名称上使用 AUTOINCRE
我有以下 SQLite 表: CREATE TABLE podcast_search ( _id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
我创建了一个带有自动递增字段的数据库: filecur.execute("CREATE TABLE IF NOT EXISTS File_Data (_FID INTEGER PRIMARY KEY
假设我有一个看起来像这样的模型 Issue: class Issue(models.Model): title = models.CharField(max_length=100) a
我正在尝试使用 fts3 在 sqlite3 中创建一个虚拟表,并将一列作为自动增量,但是在插入值时,该列没有被填充。 代码: CREATE VIRTUAL TABLE contact USING f
我正在寻找一种在 MySQL“CREATE VIEW”中插入一种自动增量列的方法。 我使用的 ORM 有一些限制,其中之一是每个表(或 View )必须只有一个唯一标识符... 无论如何......从
我最近发布了一个应用程序:https://my.kendozone.com在 Laravel 5.3/MySQL 中 我正在获取用户,但一件奇怪的事情是我的用户 ID 没有增加 1。 此处最后 10
我想在行计数器更新时模拟自动增量。 我的触发器是: CREATE DEFINER = CURRENT_USER TRIGGER `db`.`token_AFTER_UPDATE` AFTER UPDA
大家好, 我正在尝试制作一个表,其中包含一堆引用用户的 ID,并且对于每个用户,将有多个帖子也应该有自己的 ID。我的问题是如何制作表格,以便在为某个用户插入记录时,他们的帖子 ID 应递增 1。这意
我正在运行一个 fgetcsv 查询,以将一堆数据从 CSV 导入 WordPress。 我想知道如何从某个数字开始自动递增,例如,从 1000 开始。 $import1="INSERT into w
我搜索过堆栈溢出问题,但找不到解决方案。这是我的 SQLite onCreate 代码。 public void onCreate(SQLiteDatabase database) { Str
我正在使用 OleDb 处理 MS Access 数据库文件。这是片段: OleDbCommand command = oleDbConnection.CreateCommand(); command
我在数据库中有一个表,主键是'ID',我想问一下如何让它成为AUTOINCREMENT 我知道这很容易问,但我不知道我该怎么做。 谢谢 最佳答案 有一个属性“Identity Specificatio
我在 AUTOINCREMENT 附近遇到语法错误。这个错误的原因是什么? CREATE TABLE person ( id INTEGER NOT NULL AUTOINCREMENT,
我想将数据上传到雪花表中。雪花表有一个带 AUTOINCREMENT 的主键字段。 当我尝试在没有主键字段的情况下将数据上传到雪花时,我收到了以下错误消息: The COPY failed with
我正在将数据从 csv 导出到 mysql 数据库中,我希望数据库为每个导入的记录生成一个唯一的 id。我想使用唯一字段在 Crystal 报告中生成收据编号。 你认为最好的方法是什么? 最佳答案 如
刚刚开始使用 Sequelize 并尝试在 SQLite 数据库上设置自动增量列。迁移如下所示: return queryInterface.createTable('Users', { id:
假设我有 1000 万个客户名称,每个名称都与一个或多个地址相关联,我想将数据放入 SQL 数据库中。 我创建了一个 Customer 表和一个 Address 表。 Customer 表包含一个自动
嘿,我制作了一个完整的应用程序,但没有添加自动增量列,但现在我需要此列来指定最大 ID,所以我在我的主 Activity 中创建了我的数据库,就像这样。我如何修改它以添加自动增量 _id 列? db
学习 phonegap 以编写适用于 Android 的基本应用程序。出于这个原因使用 WebSQL,我知道它已被弃用,但它仅适用于 Android 手机且无法缩放,因此此时不会为 polyfill
我是一名优秀的程序员,十分优秀!