Python 应为字符串或缓冲区:私人消息应用程序
我正在尝试在django上为我的网站制作私人消息应用程序 Models.py:Python 应为字符串或缓冲区:私人消息应用程序,python,django,Python,Django,我正在尝试在django上为我的网站制作私人消息应用程序 Models.py: class Message(models.Model): sender = models.ForeignKey(User, related_name='sender') recipient = models.ForeignKey(User, related_name='recipient') sent_date = models.DateTimeField(blank=True, null=T
class Message(models.Model):
sender = models.ForeignKey(User, related_name='sender')
recipient = models.ForeignKey(User, related_name='recipient')
sent_date = models.DateTimeField(blank=True, null=True)
title = models.CharField(max_length=70, default='Без теми', blank=True, null=True)
body = models.TextField(max_length=10000)
def __str__(self):
return self.title
class Meta:
verbose_name = 'повідомлення'
verbose_name_plural = 'Повідомлення'
Views.py:
@login_required
def write(request):
context = {}
context.update(csrf(request))
context['form'] = WriteMessage()
if request.POST:
write_form = WriteMessage(request.POST)
if write_form.is_valid():
cd = write_form.cleaned_data
if User.objects.filter(username=cd['recipient']).exists():
message = Message(sender = request.user, recipient=User.objects.get(username = cd['recipient']), title=cd['title'], body=cd['body'], sent_date=datetime.now)
message.save()
return redirect('/inbox/')
else:
context['errors'] = ["Not found user with this username"]
return render(request, 'send_message.html', context)
else:
return render(request, 'send_message.html', context)
当我尝试发送消息时,我得到一个错误:预期的字符串或缓冲区。但是,当我从管理员页面发送消息时,它工作得很好
我必须做什么?请帮帮我。谢谢。我的解决方案是替换已发送的\u日期=模型。DateTimeFieldblank=True,对于已发送的\u日期=模型,null=True。DateTimeFieldDauto\u now\u add=True并删除已发送的\u日期=datetime.now,从views.py中创建新对象
看来,问题在于DateField中的不同类型的数据进入models.py和datetime模块