gpt4 book ai didi

python - 模型对象没有属性保存

转载 作者:行者123 更新时间:2023-11-28 21:13:26 24 4
gpt4 key购买 nike

这是我定义的模型:

class Post(models.Model):
user = models.ForeignKey(MSUser)
upvote_count = models.IntegerField()
post_status = models.IntegerField(choices = POST_STATUS)
title = models.CharField(max_length=200,null = True,blank = True)
content = models.CharField(max_length=1000,null = False,blank = False)
created_at = models.DateTimeField(auto_now_add=True, null=True)
updated_at = models.DateTimeField(auto_now=True, null=True)

def __unicode__(self):
return self.content

def get_user(self):
return self.user.__unicode__()

def save(self, **kwargs):
super(Post, self).save(**kwargs)

这是 View :

class Post (View):
@method_decorator(csrf_exempt) # To be removed
def dispatch(self, request, *args, **kwargs):
# Placeholder for fine grained permission system to prevent unwarranted GET/POST/PUTS
# Check request.user properties (like group etc) and request.method
# return HttpResponseForbidden()
return super(Post, self).dispatch(request, *args, **kwargs)

def get(request):
pass

def post(self, request):
responseMessage = {}
user = request.user
if user.is_authenticated():
title = request.POST.get('title', None)
content = request.POST.get('content', None)
if title is None or content is None:
responseMessage['status'] = 'failure'
responseMessage['message'] = 'Mandatory data is missing.'
return HttpResponse(json.dumps(responseMessage))
else:
newPost = Post(user = user,
title = title,
content = content,
post_status = PS_CREATED,
upvote_count = 0)
newPost.save()
responseMessage['status'] = 'success'
responseMessage['message'] = 'Post created successfully'
responseMessage['server_id'] = newPost.id
return HttpResponse(json.dumps(responseMessage))

Postman 发送请求时,我不断收到以下错误:

AttributeError: 'Post' object has no attribute 'save'

我做错了什么?

最佳答案

您的 View 类和模型类具有相同的名称,即 Post

因此,当您在 View 中执行 Post(user=..) 时,它会尝试创建 Post View 对象,然后调用 .save( ) 而它应该已经创建了 Post 模型对象并保存了它。

要解决您的问题,您需要将 View 类名称更改为其他名称。

尝试改变

class Post(View): 

类似于

class PostView(View): 

关于python - 模型对象没有属性保存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32797074/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com