Remove the parenthesis around the SEO name:
url(r'^product-(\d+)-[a-zA-Z_]+$', 'product', name="product"),
Now the pattern will not be captured and passed on to your view.
If grouping is required, use a non-capturing group ((?:...)
instead of (...)
):
url(r'^product-(\d+)-(?:[a-zA-Z_]+)$', 'product', name="product"),