【问题标题】:Django adding multiple records with the same foreign key in ModelAdminDjango在ModelAdmin中添加具有相同外键的多条记录
【发布时间】:2017-06-15 01:08:15
【问题描述】:

假设我有以下两个模型taskperson。 现在每个person 可以有多个任务(一对多关系)。

现在在一个人的管理应用程序中,我只能为每条记录添加一个外键,因此我必须为具有不同 task 但相同 emailnameperson 创建多个记录字段。

我可以在personAdmin 中做些什么,让我可以为同一个人添加多个foreign keys,并在后端创建多个记录?

class task(models.Model):
   description = models.CharField(max_length=100)

class person(models.Model):
   task  = models.ForeignKey(Author, on_delete=models.CASCADE)
   email =models.CharField(max_length=100) 
   name  = models.CharField(max_length=100)

class personAdmin(admin.ModelAdmin):
      pass

【问题讨论】:

  • 你解决了吗?因为我在这里遇到了同样的问题。不在管理页面中,而是在普通模板中。

标签: django django-modeladmin


【解决方案1】:

您可以添加第三个表,前两个表都作为 FOREIGN KEY。

这就是你目前拥有的

class ToDo_Task(models.Model):
   description = models.CharField(max_length=100)

class User(models.Model):
   task  = models.ForeignKey(Author, on_delete=models.CASCADE)
   email =models.CharField(max_length=100) 
   name  = models.CharField(max_length=100)

添加第三个表

class person_task(models.Model):
    task = models.ForeignKey(ToDo_Task, on_delete = models.CASCADE)
    person = models.ForeignKey(User, on_delete = models.CASCADE)
    ...

您可以在新表中添加更多字段。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-24
    • 2020-12-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-03-21
    相关资源
    最近更新 更多