0
フォームを送信しようとしたときに__init__() got multiple values for keyword argument 'school'
エラーが表示されます。議論では何かがありますが、私はそれを釘付けにすることはできません。フォームのDjango位置/キーワード引数の問題
ビュー:
if "AddCourse" in request.POST: #"AddCourse" is the name of the submit button in the template
f = CourseAddForm(request.POST, prefix='crs')#, school=this_school) #use Instance to edit previous stuff
g = SectionAddwCourseForm(request.POST, prefix='sctn', school=this_school)
if f.is_valid() and g.is_valid():
new_course = f.save()
new_section = g.save(commit=False)
new_section.course = new_course
new_section.save()
g.save_m2m()
s=Scollection.objects.create(Name="All Standards",Active=True,course=new_course)
else:
print 'invalid'
形式:
class SectionAddwCourseForm(forms.ModelForm):
class Meta:
model = Section
fields = ['Name','teacher']
labels = {
"Name":"Section Name",
}
def __init__(self, school, *args, **kwargs):
super(SectionAddwCourseForm, self).__init__(*args, **kwargs)
print school
try:
#self.fields['standards'].queryset = self.instance.standards.all() #works to get current ass't stds
self.fields['teacher'].queryset = Teacher.objects.filter(school=school).order_by('LastName')
except:
print "except teacher list for this school"
pass
その問題の解決策は何ですか? – DeltaG
まあ、それはあなたの期待している順序であなたのパラメータを置くことです。そう最初に学校。 'request.POST'の前に –
?それはどちらもうまくいかない。 – DeltaG