当我试图创建一封新的求职信时,我遇到了这个错误
Django=3.0
Python=3.7
<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>
以下是我的观点。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})
这是我的表格。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()
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
看看我的错误回溯
Traceback (most recent call last):
File "/home/harika/lightdegree/lib/python3.7/site-packages/django/core/handlers/exception.py", line 34, in inner
response = get_response(request)
File "/home/harika/lightdegree/lib/python3.7/site-packages/django/core/handlers/base.py", line 115, in _get_response
response = self.process_exception_by_middleware(e, request)
File "/home/harika/lightdegree/lib/python3.7/site-packages/django/core/handlers/base.py", line 113, in _get_response
response = wrapped_callback(request, *callback_args, **callback_kwargs)
File "/home/harika/lightdegree/lib/python3.7/site-packages/django/contrib/auth/decorators.py", line 21, in _wrapped_view
return view_func(request, *args, **kwargs)
File "/home/harika/lightdegree/lib/python3.7/site-packages/django/views/generic/base.py", line 71, in view
return self.dispatch(request, *args, **kwargs)
File "/home/harika/lightdegree/lib/python3.7/site-packages/django/views/generic/base.py", line 97, in dispatch
return handler(request, *args, **kwargs)
File "/home/harika/krishna test/dev-1.8/mcam/server/mcam/quotes/views.py", line 2077, in post
name_form.save_new(client=client)
File "/home/harika/krishna test/dev-1.8/mcam/server/mcam/quotes/forms.py", line 237, in save_new
return instance.save()
File "/home/harika/lightdegree/lib/python3.7/site-packages/django/db/models/base.py", line 746, in save
force_update=force_update, update_fields=update_fields)
File "/home/harika/lightdegree/lib/python3.7/site-packages/django/db/models/base.py", line 784, in save_base
force_update, using, update_fields,
File "/home/harika/lightdegree/lib/python3.7/site-packages/django/db/models/base.py", line 886, in _save_table
results = self._do_insert(cls._base_manager, using, fields, returning_fields, raw)
File "/home/harika/lightdegree/lib/python3.7/site-packages/django/db/models/base.py", line 925, in _do_insert
using=using, raw=raw,
File "/home/harika/lightdegree/lib/python3.7/site-packages/django/db/models/manager.py", line 82, in manager_method
return getattr(self.get_queryset(), name)(*args, **kwargs)
File "/home/harika/lightdegree/lib/python3.7/site-packages/django/db/models/query.py", line 1204, in _insert
return query.get_compiler(using=using).execute_sql(returning_fields)
File "/home/harika/lightdegree/lib/python3.7/site-packages/django/db/models/sql/compiler.py", line 1376, in execute_sql
for sql, params in self.as_sql():
File "/home/harika/lightdegree/lib/python3.7/site-packages/django/db/models/sql/compiler.py", line 1321, in as_sql
for obj in self.query.objs
File "/home/harika/lightdegree/lib/python3.7/site-packages/django/db/models/sql/compiler.py", line 1321, in <listcomp>
for obj in self.query.objs
File "/home/harika/lightdegree/lib/python3.7/site-packages/django/db/models/sql/compiler.py", line 1320, in <listcomp>
[self.prepare_value(field, self.pre_save_val(field, obj)) for field in fields]
File "/home/harika/lightdegree/lib/python3.7/site-packages/django/db/models/sql/compiler.py", line 1271, in pre_save_val
return field.pre_save(obj, add=True)
File "/home/harika/lightdegree/lib/python3.7/site-packages/django_bleach/models.py", line 32, in pre_save
**self.bleach_kwargs
File "/home/harika/lightdegree/lib/python3.7/site-packages/bleach/__init__.py", line 90, in clean
return cleaner.clean(text)
File "/home/harika/lightdegree/lib/python3.7/site-packages/bleach/sanitizer.py", line 169, in clean
raise TypeError(message)
TypeError: argument cannot be of 'NoneType' type, must be of text type
我通过添加模型编辑了我的问题。py和错误回溯请查看
如何解决此错误