无法访问模型中的数据,并得到下一个错误:AttributeError:通用详细视图Myview必须使用对象pk或子弹调用。

我的模特:

class product(models.Model):
    title = models.CharField(max_length = 1000)
    description = models.TextField(max_length = 5000)
    price = models.IntegerField()


我的看法:

class Myview(DetailView):
    queryset = product.objects.all()
    template_name = 'templates/products.html'


我的网址:

urlpatterns = [
    url(r'^products/', Myview.as_view(), name='products'),
   ]


如果还有其他合法方法可以从我的模型中获取数据,则可以更改视图和url的正确方法。

最佳答案

通用DetailView用于获取有关模型的单个实例的信息。

由于您正在获取所有product(在product.objects.all()行中),因此似乎要显示产品列表。在这种情况下,您必须使用ListView

class MyView(ListView):
    model = Product
    template_name = 'templates/products.html'

关于python - AttributeError:通用详细信息 View 必须使用对象pk或子弹调用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35546034/

10-12 19:31