Django вложенный вопрос встроенной формы администратора - PullRequest
1 голос
/ 04 августа 2011

Я пытаюсь следовать примеру в этом вопросе , но что-то у меня не работает.

Я пытаюсь сделать приложение, которое управляет образовательными стандартами. В упрощенном варианте проблемы есть три вида информации. Есть предметы, такие как математика. Существуют широкие стандарты, такие как «Студенты смогут добавлять номера». Существуют стандарты, такие как «Студенты смогут добавлять однозначные номера». Я считаю, что модель настроена правильно:

# Subjects, such as math, science, english...
class Subject(models.Model):
    subject = models.CharField(max_length=255, unique=True)

# Broad standards, such as "Students will understand the structure of matter."
class BroadStandard(models.Model):
    broad_standard = models.CharField(max_length=255, unique=True)
    subject = models.ForeignKey(Subject)

# Standards, such as "Students will understand the structure of the periodic table."
class Standard(models.Model):
    standard = models.CharField(max_length=255, unique=True)
    broad_standard = models.ForeignKey(BroadStandard)

У меня проблемы с настройкой администратора. Я знаю, что не могу вкладывать строки. Я хочу, чтобы пользователь мог ввести тему, а затем ввести широкий стандарт. Я ожидаю, что для ввода стандарта пользователь должен будет щелкнуть по общему стандарту и перейти на отдельную страницу для ввода стандарта. Это нормально, но на странице администратора нет ссылки для входа в стандарт. Мой код admin.py:

class BroadStandardInline(admin.TabularInline):
    model = BroadStandard
    extra = 0

class StandardInline(admin.TabularInline):
    model = Standard
    extra = 0

class BroadStandardAdmin(admin.ModelAdmin):
    inlines = [StandardInline]

class StandardAdmin(admin.ModelAdmin):
    fields = ['standard']

class SubjectAdmin(admin.ModelAdmin):
    fields = ['subject']
    inlines = [BroadStandardInline]

admin.site.register(Subject, SubjectAdmin)

Как сделать так, чтобы стандартное поле отображалось в основной форме или щелкнув по общему стандарту?

...