Python django form ForeignKey作为ForeignKey.name而不是ForeignKey.id
models.pyPython django form ForeignKey作为ForeignKey.name而不是ForeignKey.id,python,django,django-forms,django-views,Python,Django,Django Forms,Django Views,models.py class Employee(models.Model): name = models.CharField(max_length=100) company = models.ForeignKey(Company, null=True, on_delete=models.SET_NULL, related_name='company') views.py class Employee(CreateView): fields = ('name','com
class Employee(models.Model):
name = models.CharField(max_length=100)
company = models.ForeignKey(Company, null=True, on_delete=models.SET_NULL, related_name='company')
views.py
class Employee(CreateView):
fields = ('name','company')
model = models.Employee
def form_valid(self, form):
self.object = form.save(commit=False)
comp_name = self.request.POST.get("company", "")
shop_id = ""
for word in dept_name.split(" "):
shop_id += word[:1]
self.object.nik = shop_id[-3:]
self.object.save()
return super(ModelFormMixin, self).form_valid(form)
我正在尝试从我的代码上的ForeignKey获取值
self.request.POST.get(“company”,即“”)
是返回公司的id
,我需要它返回公司的名称。怎么做?…你不应该访问请求。POST
;表单的要点是它将发布的数据转换为正确的格式,在本例中为ForeignKey
在这里,公司将作为表单的结果存储在对象上。保存;您应该在那里访问它:
self.object = form.save(commit=False)
comp_name = self.object.company.name
当我将其更改为comp\u name=self.object.company
时,出现错误“company”对象没有属性“split”