django - Django外键创建表单获取实例
问题描述
当我使用外键字段创建新对象时,模板中有没有办法在创建表单上获取模板中的外键对象字段?每当我创建一个新注释时,我都希望:“将新注释添加到 {{申请人.full_name }}”
class Applicant(models.Model):
first_name = models.CharField(max_length=128,blank=False, verbose_name="First Name")
middle_name = models.CharField(max_length=128,blank=True, verbose_name="Middle Name")
last_name = models.CharField(max_length=128,blank=False, verbose_name="Last Name")
@property
def full_name(self):
"Returns the applicant's full name."
return '%s %s %s' % (self.first_name, self.middle_name, self.last_name)
class Note(models.Model):
applicant = models.ForeignKey(Applicant, related_name='notes', on_delete=models.CASCADE)
description = models.TextField(blank=True)
)
(更新)这是视图:
class NoteCreate(CreateView):
model = Note
form_class = forms.NoteForm
template_name = 'careers/add_note.html'
def form_valid(self, form):
applicant_pk = self.kwargs['pk']
applicant = Applicant.objects.get(pk=applicant_pk)
self.object = form.save(commit=False)
self.object.applicant = applicant
self.object.save()
return super(NoteCreate, self).form_valid(form)
解决方案
推荐阅读
- reactjs - 做出反应。如何使用状态实现功能?
- php - PHP 8 中处理 UTF-8 和 Unicode 的最佳实践
- jquery - jQuery:将选择选项列表转换为复选框列表而不使用多个?
- python - 有没有办法让十字形的所有边缘都弯曲?
- javascript - 使用 onClick 从列表中删除单个项目
- android - 在后台使用应用程序时使用导航组件时从通知导航
- groovy - 读取脚本文件时,Mulesoft Groovy 脚本权限被拒绝
- debugging - 使用“cl”调用链接器忽略调试信息
- reactjs - 在 React Native Paper 中更改 TextInput 的文本颜色 - 仅用于一个单词
- nginx - 关于将域链接到服务器的超级基本问题