私はジャンゴでインスタンスデータを挿入する問題を抱えているが、これは私がデータを挿入するとき、私はこのエラーを取得し、これが私の見解djangoのビューからデータインスタンスを挿入するには?
def tambah_klaimhonor(request):
klaim = {}
user = request.user.id
pegid = DipPegawai.objects.filter(PegUser = user).values_list('PegID',flat=True)[0]
honoruser = DipHonorKegiatanPeg(PegID=pegid)
if request.method == 'POST':
form = KlaimHonorGuruKarForm(request.POST, instance=pegid)
if form.is_valid():
form.save()
return redirect('index_klaimhonor')
klaim['form'] = KlaimHonorGuruKarForm()
return redirect('index_klaimhonor')
である私のモデル
class DipPegawai(models.Model):
PegID = models.AutoField(primary_key=True)
PegNamaLengkap = models.CharField(max_length=100, blank=True, null=True)
PegUser = models.OneToOneField(User, null=True, blank=True, unique=True)
class DipHonorKegiatanPeg(models.Model):
KegID = models.AutoField(primary_key=True)
PegID = models.ForeignKey(DipPegawai)
ある
Exception Type: ValueError at /kegiatan/tambah_klaimhonor
Exception Value: Cannot assign "41L": "DipHonorKegiatanPeg.PegID" must be a "DipPegawai" instance.
私のフォーム
class KlaimHonorGuruKarForm(ModelForm):
class Meta:
model = DipHonorKegiatanPeg
fields = ('KegNama', 'KegTglMulai', 'KegJamMulai', 'KegTglAkhir', 'KegJamAkhir',)
labels = {'KegNama': 'Nama Kegiatan', 'KegTglMulai': 'Mulai Tanggal Kegiatan',
'KegJamMulai': 'Mulai Jam Kegiatan',
'KegTglAkhir': 'Akhir Tanggal Kegiatan', 'KegJamAkhir': 'Akhir Jam Kegiatan'}
widgets = {
# 'KegNama': TextInput(attrs={'required': True}),
'KegJamAkhir': TextInput(attrs={'required': True}),
'KegTglMulai': DateInput(attrs={'id': 'datepicker', 'data-date-format': 'yyyy-mm-dd', 'required': True}),
'KegTglAkhir': DateInput(attrs={'id': 'datepicker1', 'data-date-format': 'yyyy-mm-dd', 'required': True}),
'KegJamMulai': TextInput(attrs={'id': 'timepicker2', 'required': True}),
}
私はDipHonorKegiatanPegにデータを挿入するためにユーザーログインを使用していますが、DipPegawaiのPegID.DipHonorKegiatanPegインスタンスを挿入しますか?
[mcve]に減らすことはできますか? – xiawi
i'vそれは 'pegid'のの' – Gusan