我正在尝试找出链接/复制具有几个空白表单槽(即Notes,Status)的表的最佳方法,这些表单槽将针对每个项目而变化。到目前为止,我在主表中有以下内容:
class Project(models.Model):
name = models.CharField(max_length=200)
architect = models.CharField(max_length=200, blank=True)
owner = models.CharField(max_length=200, blank=True)
city = models.CharField(max_length=200, blank=True)
state = models.CharField(max_length=200, blank=True)
zipc = models.CharField(max_length=200, blank=True)
status = models.CharField(choices=projectStatus, max_length=200)
bidders = models.ManyToManyField(Bidder)
notes = models.TextField(blank=True)
def publish(self):
self.save()
def __str__(self):
return self.name
投标人是我需要复制/链接的表。这是Bidders表格:
class Bidder(models.Model):
division = models.CharField(max_length=200, blank=True)
section = models.CharField(max_length=200, blank=True)
size = models.CharField(max_length=200, blank=True)
company = models.CharField(max_length=200)
address = models.CharField(max_length=200, blank=True)
city = models.CharField(max_length=200, blank=True)
st = models.CharField(max_length=200, blank=True)
zipc = models.CharField(max_length=200, blank=True)
contact = models.CharField(max_length=200, blank=True)
phone1 = models.CharField(max_length=200, blank=True)
phont2 = models.CharField(max_length=200, blank=True)
email1 = models.EmailField(max_length=200, blank=True)
email2 = models.EmailField(max_length=200, blank=True)
notes = models.TextField(blank=True)
def publish(self):
self.save()
def __str__(self):
return self.company
可以将整个项目视为一个呼叫跟踪系统。创建新项目时,我需要记录联系人列表并根据呼叫进行的方式更改状态(即,接受,拒绝,需要更多信息等)
我要联系的用户列表在“投标者”表中。我只需要能够更改每个项目的投标人表中的注释和状态输入。 我认为这需要某种多方面的关系,但是我是Django的新手,到目前为止,谷歌搜索对我没有多大帮助。我不确定要查什么。