В настоящее время я делаю views
, вызванный slug
s на django
, но у меня, похоже, есть некоторые проблемы с этим.
Предположим, у меня есть записи в базе данных, такие как de
ce
ceiling
(slug fields
).Теперь, когда я звоню, myapp/ce
или myapp/de
.Возвращает вид, который я хочу.Но когда я звоню myapp/ceiling
, он возвращает 404
.
No sculpture found matching the query
Хотя перехватывает URL.
Проблема возникает, когда я использую заглавную букву вполе name
.Остальные поля содержат lowercase
.
Мне не удалось понять это поведение.
Мой код выглядит следующим образом:
urls.py
urlpatterns = patterns('sculptures.views',
(r'^$', SculptureListView.as_view()),
(r'^(?P<slug>[\w-]+)/$', SculptureDetailView.as_view()),
)
views.py
class SculptureDetailView(DetailView):
context_object_name = 'sculpture'
def get_queryset(self):
sculpture_slug = get_object_or_404(Sculpture, slug__iexact=self.kwargs['slug'])
return Sculpture.objects.filter(slug=sculpture_slug)