我从我的 views.py 中得到这个错误:
type object 'Notification' has no attribute 'object'
和我的views.py:
from django.shortcuts import render_to_response
from django.http import HttpResponseRedirect
from notification.models import Notification
def show_notification(request, notification_id):
n = Notification.object.get(id=notification_id)
return render_to_response('notification.html', {'notification':n})
def delete_notification(request, notification_id):
n = Notification.object.get(id=notification_id)
n.viewed = True
n.save()
还有我的 models.py:
from django.db import models
from django.contrib.auth.models import User
from django.db.models.signals import post_save
from django.dispatch import receiver
class Notification(models.Model):
title = models.CharField(max_length=250)
message = models.TextField()
viewed = models.BooleanField(default=False)
user = models.ForeignKey(User, on_delete=models.DO_NOTHING)
def create_welcome_message(sender, **kwargs):
if kwargs['created']:
noti=Notification.objects.create(user=kwargs['instance'],
title="Welcome Message",
message="Thank you for singing up!")
post_save.connect(create_welcome_message, sender=User)
我已经失踪很久了。使用这种语言。然后帮我解决这个错误。
最佳答案
您正在尝试使用 Notification.object.get(id=notification.id)
获取通知。
将object
替换为objects
,以便查询通知。
例如,Notification.objects.get(id=notification.id)
关于python - 类型对象 'Notification' 没有属性 'object',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55477144/