这是我的模特:
class Affiliation(models.Model):
submission = models.ForeignKey(Submission, related_name='submission_affiliations')
name = models.CharField(max_length=255)
department = models.CharField(max_length=255)
city = models.CharField(max_length=255)
country = models.CharField(max_length=255)
sequence_no = models.CharField('Sequence No.', max_length=1, default='1')
class Author(models.Model):
submission = models.ForeignKey(Submission, related_name='submission_authors')
salutation = models.CharField(max_length=255)
last_name = models.CharField(max_length=255)
first_name = models.CharField(max_length=255)
email = models.CharField(max_length=255)
presenting_paper_flag = models.BooleanField("Presenting Paper")
sequence_no = models.CharField('Sequence No.', max_length=1, choices = SQ_NO, default='1')
affiliations = models.ManyToManyField(Affiliation, through='AuthorAffiliation')
class AuthorAffiliation(models.Model):
submission = models.ForeignKey(Submission)
author = models.ForeignKey(Author)
affiliation = models.ForeignKey(Affiliation)
Affiliation和Author之间的关系是M2M。 “作者”类中有“附属”字段。 “AuthorAffiliation”类中有“作者”和“从属关系”。
当我去django admin添加更多作者时,它应该如下所示(请关注红色椭圆):
http://nc7.upanh.com/b5.s1.d1/a68263c1da3310d189ef9252b0f482ef_35227917.screenshot20110916at1.png
**
**
这是我目前的表格:
http://nc9.upanh.com/b4.s9.d1/851b97ed981502921443ce4d4a614ff0_35228599.screenshot20110916at3.png
感谢。
(抱歉我的英文)
答案 0 :(得分:1)
您是否尝试过inline formsets?
答案 1 :(得分:0)
我不知道您是否会考虑使用ajax,但如果django-ajax-selects应该帮助您,我已经多次使用它了。
答案 2 :(得分:0)
你可以像G-mail那样为电子邮件作曲家的“收件人”字段做些什么 有一个自动完成的文本区域或文本字段,这个自动完成在文本区域中放置逗号分隔值... 这将需要JS / ajax