向forms.ModelForm对象添加URL参数,并将其传递给HTML模板
Models.py:
class Training_details(models.Model):
training = models.ForeignKey(Training, on_delete=models.CASCADE)
description = models.TextField()
class Meta:
db_table = 'training_details'
Views.py:
from .models import Training_details
class TrainingDetailsForm(forms.ModelForm):
class Meta:
model = Training_details
fields = ['description']
def add_training_htm(request):
if 'training_id' in request.GET and request.GET.get('training_id').isdigit():
form = TrainingDetailsForm()
return render(request, 'add_training.html', {'form': form})
如何将URL参数 training_id 添加到 TrainingDetailsForm() 表单,并将其传递给HTML模板?它应该被加入到 fields 列表中,对吗?但我还没想出正确的语法。请帮忙?
解决方案
在URL中应该是像 /add_training/?training_id=5 这样的形式,这样就可以通过以下方式获取:
return render(request, 'add_training.html', {
'form': form,
'training_id': request.GET.get('training_id'),
})
你也可以在模板中使用它,使用 {{ training_id }}。
站内所有文章版权归属LeftHeroAI导航站,无授权禁止任何主体转载、抄袭、复制内容,亦不得私自架设镜像站点。一经侵权,本站将通过法律途径追责。