2016-01-10 5 views
-1

Я хочу создать проект django с двумя основными страницами шаблонов и подробностями из основного списка с использованием генетических представлений. Просмотр списка и просмотр деталей. основной список работа, но не рабочий список деталей. этот мой код может кто-нибудь мне помочь?просмотр списка просмотров и подробностей в django

urls.py

urlpatterns = [ 
url(r'^$', ListView.as_view(
    model = Test, 
    queryset = Test.objects.all(), 
    context_object_name = "test_list", 
    template_name='blog\test_list.html')), 


url((r'^(?P<pk>\d+)-(?P<slug>[-\w]+)/$', DetailView.as_view(
    context_object_name="test_list1", 
    model=Test, 
    template_name='blog\Test_details.html' 
    ), name="test"), 

] 

HTML код test_list

{% for test in test_list %} 
<h2> <a href="{{test.id}}">{{test.Title}}</a></h2> 
{% endfor %} 

HTML код test_details

<h2>{{ test.Title }}</h2> 
+0

A) В чем проблема? B) показать представления. Пожалуйста. – Pynchia

+0

BTW, ваш 'urls.py', кажется, ошибочен, лишний'] '... – Pynchia

+0

проблема в том, что я не могу просмотреть данные второго URL-адреса теста – user27818

ответ

0

Ваша ссылка не соответствует вашим URL-адреса: вы просто передавая идентификатор в вашей ссылке, но шаблон URL ожидает ссылки и пули.

+0

как это исправить? – user27818

+0

Ну, может быть, вам тоже нужно пропустить слизню, чтобы она совпадала? Или, если вы не хотите пропускать пулю, измените свой шаблон url так, чтобы он этого не ожидал? –

+0

Я не понимаю вас – user27818

0

Я думаю, ваша проблема несколько опечаток:

Первый в URLs, вы должны изменить это:

url((r'^(?P<pk>\d+)-(?P<slug>[-\w]+)/$', DetailView.as_view(

к этому:

url((r'^(?P<pk>\d+)/$', DetailView.as_view(

Во-вторых, (опять же для DetailView) ваше значение context_object_name установлено на test_list1, но ваш шаблон использует test (эти два должны совпадать, учитывая, что в этом подробном представлении нет списка, я бы изменил их до test).

В-третьих, ваш template_name устанавливается как blog\Test_details.html с капиталом T в то время как ваш HTML файл на самом деле с строчными буквами t

+0

, он говорит, что просмотр списка работает, поэтому для подробного представления (его последний образец кода) его шаблон вызывает '{{test.Title}}', поэтому я думаю, что это должно быть 'test'. Чтобы быть более понятным, подробный вид не является списком, поэтому в этом шаблоне не будет тегов '{% for%}'. –

+0

теперь проблема заключается в том, что второй шаблон пуст, и не показывать мне данные из моей базы данных – user27818

0

да что правильно мы успеха (просто удалить - (P? [- \ ш] +)) для подключения первого и второго шаблонов, но второй шаблон мой Test.Title пуст, не покажите мне данные из моей базы данных, если я использую {% for%}, покажи мне сообщение об ошибке

Смежные вопросы