私の製品モデルの詳細ページにアクセスしようとすると、そのエラーが発生します。私はurlファイルにslugフィールドを持っていますが、それは重要ではないようです。一般的な詳細ビューは、オブジェクトpkまたはスラッグのいずれかで呼び出さなければなりません
モデル
class Product(models.Model):
product_name= models.CharField(max_length=30, blank=False, null=False, verbose_name="the product name")
product_slug= models.SlugField(max_length=30, blank=False, null=False, verbose_name="the product slug")
product_excerpt= models.CharField(max_length=100, blank=False, null=False, verbose_name="product excerpt")
def _set_product_code(self):
product_code_temp = hashlib.sha224()
product_hash = self.product_name
product_hash = product_hash.encode('utf-8')
product_code_temp.update(product_hash)
return product_code_temp.hexdigest()[0:5]
product_code = property(_set_product_code)
ビュー
class ProductPage(DetailView):
model = Product
context_object_name = 'product'
template_name="product.html"
のURL
url(r'^product/(?P<product_slug>\w+)/(?P<product_code>\w+)/$', ProductPage.as_view(), name="product"),
誰もが私が間違ってやって特定することはできますか?
class ProductPage(DetailView):
model = Product
slug_field = 'product_slug'
# etc