Аргумент не может быть типа 'NoneType', в Django 3.0 он должен быть текстового типа

Когда я пытаюсь создать новое сопроводительное письмо, я получаю эту ошибку

Django = 3.0

Python = 3.7

Вот мой cover_letters_list.django.html

<tr>
                    <td colspan="4">
                        <span class="form-tag {% if not name_form %} hidden {% endif %}">
                            <form class="form-inline" target="" method="POST" style="margin-top: 0px;">
                                {% csrf_token %}
                                <input type="text" class="span6" name="name" value="{{name_form.name.value}}" placeholder="Cover letter name">
                                <button type="submit" class="btn btn-primary">Create</button>
                                <button type="button" class="btn cancel-btn">Cancel</button>
                            </form>
                        </span>
                        <span class="button-tag {% if name_form %} hidden {% endif %}">
                            {% trans "No data found." %} Click to <a class="new_cover" href="#"> add a new cover letter</a>
                        </span>
                    </td>
                </tr>

вот мой views.py

class CoverLetterListView(View):
    def get(self, request):
        client = request.user.client
        cover_letters = CoverLetter.objects.filter(client=client, deleted=False,
                                                   is_master=True)
        return render(request, 'quotes/covers/cover_letters_list.django.html',
                      {'cover_letters': cover_letters})

    def post(self, request):
        client = request.user.client
        name_form = forms.CoverLetterNameForm(request.POST)
        cover_letters = CoverLetter.objects.filter(client=client, deleted=False)

        if name_form.is_valid():
            name_form.save_new(client=client)
        else:
            logger.warning(request, 'Invalid form')

        return render(request, 'quotes/covers/cover_letters_list.django.html',
                      {'name_form': name_form, 'cover_letters': cover_letters})

вот мой forms.py

class CoverLetterNameForm(forms.ModelForm):
    class Meta:
        model = CoverLetter
        fields = ('name',)

    def save_new(self, client, master=True):
        instance = self.save(commit=False)
        instance.is_master = master
        instance.client = client
        return instance.save()

Рассмотрим мой файл models.py

class CoverLetter(models.Model):
    name = models.CharField(max_length=120)
    title = models.CharField(max_length=120, blank=True, null=True)
    is_master = models.BooleanField(default=False)
    show_logo = models.BooleanField(default=False)
    show_company_name = models.BooleanField(default=False)
    logo = models.ImageField(upload_to=get_logo_path, blank=True, null=True)
    text = BleachField(blank=True, null=True)
    deleted = models.BooleanField(default=False)
    client = models.ForeignKey(Client,on_delete=models.CASCADE)

    created_at = models.DateTimeField(auto_now_add=True)
    modified_at = models.DateTimeField(auto_now=True)

    def __str__(self):
        return self.name

посмотрите на трассировку моей ошибки

Я отредактировал свой вопрос, добавив свой models.py и трассировку ошибки, пожалуйста, посмотрите

Как я могу решить эту ошибку

Вернуться на верх