0

メイン モデルにインラインとして含まれているスルー メンバーシップに booleanfield を追加すると、奇妙な動作が発生します。保存すると、フィールドが True/False としてランダムに表示されます。DBに何があるかは関係ありません。

class Project(models.Model):
    # Relations with other entities.
    employees = models.ManyToManyField('staff.Person', through='project.PersonProjectMembership',
                                       related_name='projects')
class PersonProjectMembership(models.Model):
    project = models.ForeignKey('project.Project', related_name="person_memberships")
    person = models.ForeignKey('staff.Person', related_name="project_memberships")
    lead = models.BooleanField(default=False)

class ProjectAdmin(TranslationAdmin, ModelAdmin):
    inlines = (PersonProjectMembershipInline,)

class PersonProjectMembershipInline(TranslationStackedInline, admin.StackedInline):
    model = Project.employees.through
    extra = 1
    formset = PersonProjectMembershipInlineFormSet

class PersonProjectMembershipInlineFormSet(BaseInlineFormSet):
    def clean(self):
        # [...]

何か案が?

4

1 に答える 1