你好,我是django和python的新手,这个错误花了我很多时间,我不知道问题在哪里
views.py
currentUser = request.user
assert isinstance(category.objects, object)
categoryData = category.objects.get(categoryName=category)
newListing = Listing(` title=title,
description=description,
imageurl = imageurl,
price=price,
Category=categoryData,
owner=currentUser
)
newListing.save()
return HttpResponseRedirect(reverse(index))
models.py
个字符
我尝试了很多方法,但都失败了
2条答案
按热度按时间ctzwtxfj1#
你需要在这一行大写“Category.objects”
第一个月
使其
categoryData = Category.objects.get(categoryName=category)
个mbskvtky2#
查看您提供的代码,似乎您使用相同的变量名称
category
作为模型名称和(slug?)参数。必须通过slug参数名称更改来解决。(P.S.category
在对象过滤和category.objects
中)编辑
当你使用
objects.get(...)
方法的时候,你也总是要捕获一个异常,因为如果它找不到任何对象,它会抛出DoesNotExist异常。**注意!**只有当你完全确定它只从db返回一个对象的时候,你才应该使用这个方法。否则你还必须捕获MultipleObjectsReturned异常。也可以考虑使用get_object_or_404。但请记住,它只捕获DoesNotExist异常。
用法示例:
字符串