在我创建的应用程序中,一些用户具有“编码器”角色并分配给“分配”。
我似乎无法正常工作的是管理员将工作分配给工作分配的过程。Django - 在管理员中分配m2m关系
这里是模型的代码我迄今(可能是完全错误的):
class Coder(models.Model):
"""Every user can be a coder. Coders are assigned to Assignments"""
user = models.OneToOneField(User)
class Admin:
list_display = ('',)
search_fields = ('',)
def __unicode__(self):
return u"Coders"
class Assignment(models.Model):
"""(Assignment description)"""
title = models.CharField(blank=True, max_length=100)
start_year = models.IntegerField(blank=True, null=True)
end_year = models.IntegerField(blank=True, null=True)
country = models.IntegerField(blank=True, null=True)
coders = models.ManyToManyField(Coder)
class Admin:
list_display = ('',)
search_fields = ('',)
def __unicode__(self):
return u"Assignment"
这是管理代码:
class AssignmentCoderInline(admin.StackedInline):
model = Assignment.coders.through
can_delete = False
verbose_name_plural = 'coder'
class AssignmentAdmin(admin.ModelAdmin):
fieldsets = [
('Assignment', {'fields': ['title', 'start_year', 'end_year']})
]
inlines = (AssignmentCoderInline,)
class CoderInline(admin.StackedInline):
model = Coder
can_delete = False
verbose_name_plural = 'coder'
现在,当我在admin,我想创建一个任务并为其添加编码器。 然而,所有我看到试图这样做的时候是这样的:
我怎么能一个编码器/用户添加到任务,所以我后来让他可以在一个视图中的所有他的任务? 这可能是一个非常愚蠢的问题,但请回答,无论如何,我非常感谢任何帮助:)
这很有帮助,谢谢! 虽然我没有回答我的问题:我如何将一个或多个用户(=编码员)分配给管理员的任务?这是行不通的,我真的很想知道如何让它工作:) – LukasKawerau 2013-04-20 09:30:21
好吧,看起来你已经有了这个设置。当您转到后端管理面板中的分配时,http://i.stack.imgur.com/Omhuu.png允许您将更多编码器(多个编码器)添加到单个分配中。如果我没有错,那就是你要找的东西。 – 2013-04-20 09:33:20
另外,它可能是您将__unicode__作为“编码器”返回的事实。请注意,如果您在pastebin.com代码段中共享整个admin.py和models.py, – 2013-04-20 09:35:21