Django ORM存储OneToOneField

问题描述

以前,我有一个models.MataKuliahmodels.MataKuliahDosenKompetensi相关,其中dosenMataKuliahDosenKompetensi的关系被设计为OnetoOneField,并且MataKuliahManyToManyField

class MataKuliah(TimeStampedModel):
    id = models.BigAutoField(primary_key=True)
    kode_mk = models.CharField(_('Kode MK'),max_length=10,unique=True)
    nama_mk = models.CharField(_('Nama MK'),max_length=256)

    .... # and more field (without any `DosenKaryawan` field or other relations).

    def __str__(self):
        return self.nama_mk


class MataKuliahDosenKompetensi(TimeStampedModel):
    id = models.BigAutoField(primary_key=True)
    dosen = models.OnetoOneField(DosenKaryawan,on_delete=models.CASCADE)
    mata_kuliah_set = models.ManyToManyField(MataKuliah)

    def __str__(self):
        return '%s' % self.dosen

如何获得每个DosenKaryawan的{​​{1}}列表,就像存储在ORM中一样? (没有模板标签。看起来像

MataKuliah

因此,在我的模板中,我只是将MataKuliah.objects.published()\ .annotate(dosen_list=....) 放在每个dosen_list项目中,例如:

MataKuliah

screenshot

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)