Python django form ForeignKey作为ForeignKey.name而不是ForeignKey.id

Python 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

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','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”