0

我的 Django 应用程序文件中有两个模型,models.py如下所示:

class User(models.Model):
    user = models.IntegerField(primary_key=True,max_length=5)
    first_name = models.CharField(max_length=35)
    last_name = models.CharField(max_length=35)
class Device(models.Model):
    device_name = models.CharField(unique=True,max_length=30)
    user = models.ForeignKey('User')

每个Device人只能拥有一个User,但每个人都User可以拥有不止一个Device

在管理界面中,当我显示 a 时Device,它会User在下拉列表中显示 ,但是当我显示 时User,我看不到关联的Device. 我该如何解决这个问题,以便我可以从任何一方看到关系?

4

2 回答 2

3

您需要使用InlineModelAdmin 对象

UPD

应该看起来像:

class DeviceInline(admin.TabularInline):
    model = Device

class UserAdmin(admin.ModelAdmin):
    inlines = [
        DeviceInline
    ]
于 2013-01-27T19:44:00.347 回答
0

您可以将 StackedInline 与 extra=0 选项一起使用。

class DeviceInline(admin.StackedInline):
    model = User
    extra = 0

    def has_add_permission(request):
        return True or False # change for your context
于 2013-01-27T19:47:07.867 回答