首页 > 解决方案 > Django,一页上有 2 个表单,一个表单使用另一个表单的数据

问题描述

这是我的模型:

from django.db import models

ATTACK_TYPES = ('EXA','Example')

class AttackImage(models.Model):
    title = models.CharField(max_length=255)
    image = models.ImageField(upload_to='attack_images')
    source_url = models.URLField(blank=True,null=True)


class AttackItem(models.Model):
    attack_image = models.ForeignKey(AttackImage, on_delete=models.CASCADE)
    attack_used = models.CharField(max_length=55, choices=ATTACK_TYPES)
    hidden_data_found = models.BooleanField(blank=True)

如您所见,我希望用户能够同时创建攻击项和攻击图像,攻击项与攻击图像具有外键关系。我怎样才能做到这一点?提前致谢。

标签: pythondjango

解决方案


我不是 django 专家,但通过阅读文档,我认为您可能需要为每个模型创建模型表单,然后在您的 .html 中使用这些单独的表单,同时使用单个按钮提交。否则,我认为您也可以通过创建自定义表单并管理视图中的创建方法,同时使用 request.POST 获取数据来做到这一点。


推荐阅读