Я создаю сайт в Django. У меня есть блог модели, как это:Как сделать Django urlpattern принимать только пули из модели
class Blog(models.Model):
name = models.CharField(max_length=255)
slug = models.SlugField(max_length=255)
...
И я хочу, чтобы первые страницы каждого блога, чтобы быть в URL, как это: www.example.com/blog-slug/
Однако, я Кроме того, используя Flatpages и хотите, чтобы быть в состоянии соответствовать URL, например: www.example.com/flat-page/
Так urlpatterns, как это не будет работать:
urlpatterns = patterns('',
(r'^(?P<blog_slug>[-\w]+)/$', 'weblog_index', {}),
...
(r'^', include('django.contrib.flatpages.urls')),
)
потому что все Flatpages URL-адресов попадет в ловушку первый образец. Думаю, я хочу, чтобы первый шаблон был только соответствовал действительным слизнякам из модели блога, но я не уверен, как это сделать.
Я не уверен, что следую ... Теперь я попытался настроить представление «weblog_index», которое делает get_object_or_404(), используя сопоставленный blog_slug. Это работает в том, что отображается правильная страница, но если она терпит неудачу, она не переходит к попытке сопоставления URL Flatpages. –
(Который я бы не ожидал этого - как только Django сопоставил URL-адрес и перешел к представлению, он не вернется и попробует больше URL-адресов после того, как он ...?) –
Я думаю, что OP спрашивает для сопоставления плоских просмотров страниц с значениями поля слива. –