-1
私はSqlite dbを使用するdjangoプロジェクトを持っています。 と2つの簡単なテーブルがあります。djangoに外部キー値を保存しない理由
パーソン:
- MeliCode
- ます。FName
マーク:
- PERSONID - >外部キー
- グレード
これは私のモデルのコードです:
<code>
from django.db import models
class Person(models.Model):
melicode = models.CharField(max_length=10)
fname = models.CharField(max_length=100)
def __str__(self):
return self.fname
class Meta:
verbose_name = 'Person'
class Mark(models.Model):
prs = models.ForeignKey(Person, on_delete=models.CASCADE)
grade = models.IntegerField()
def __int__(self):
return self.grade
class Meta:
verbose_name = 'Grade'
</code>
、これが私のフォームコードです:
<code>
from django import forms
from .models import Person
from .models import Mark
class Marks(forms.ModelForm):
person = forms.ModelMultipleChoiceField(Person.objects.all(), label='Name')
grade = forms.CharField(label='Mark')
class Meta:
model = Mark
fields = ['person', 'grade']
</code>
と、これは私の意見です:
<code>
from django.shortcuts import render, HttpResponse
from .forms import Marks
def Grade(request):
if request.method == "POST":
print(request.POST)
frc = Marks(request.POST)
if frc.is_valid():
frc.save()
return HttpResponse("<p>Registered<p>")
else:
return render(request, 'grade.html', context=locals())
else:
frc = Marks()
return render(request, 'grade.html', context=locals())
</code>
が、任意の値を保存していません外部キーフィールドで
これはDjangoのツールバーから返された結果である:人がnullであることを示し
<code>
INSERT INTO "App_mark" ("person", "grade") VALUES ('None', '10')
<code>
。
保存する値はどれですか? – Sayse
Person Id値。 –