Страница не найдена (404) в представлениях на основе классов - PullRequest
0 голосов
/ 23 февраля 2020

У меня проблема с представлениями баз классов, и я не могу ее решить! Я пытаюсь сделать веб-страницу с подробным сообщением. Но когда я пытаюсь направить http://127.0.0.1: 8000 / post / 1 / , я получаю это В то время, когда я пытаюсь получить http://127.0.0.1: 8000 / работает совершенно отлично.

Я не совсем не понимаю этого!

my urls.py


from django.urls import path
from .views import PostListView, PostDetailView
from .models import Post
from . import views

urlpatterns = [
    path('', PostListView.as_view(), name='blog-home'),
    path('post/<int:pk>/', PostDetailView.as_view(), name='post-detail'),
    path('about/', views.about, name='blog-about'),
]

my view.py

# pylint:disable=no-member
from django.shortcuts import render
from django.views.generic import ListView, DetailView
from .models import Post


def home(request):
    context = Post.objects.all()
    return render(request, {'posts': context})


class PostListView(ListView):
    model = Post
    context_object_name = 'posts'
    ordering = ['-date_posted']


class PostDetailView(DetailView):
    model = Post


def about(request):
    return render(request, 'blog/about.html', {'title': 'About'})

my post_detail. html

{% extends "blog/base.html" %}
{% block content %}
<article class="media content-section">
    <div class="media-body">
        <div class="article-metadata">
            <img class="img-profile" src="{{ object.author.profile.image.url }}" />
            <a class="mr-2" href="#">{{ object.author }}</a>
            <small class="text-muted">{{ object.date_posted | date:"d F, Y " }}</small>
            <hr />
        </div>
        <h2 class="article-title">{{ object.title }}</h2>
        <p class="article-content">{{ object.content }}</p>
    </div>
</article>
{% endblock content %}

спасибо:)

Ответы [ 2 ]

0 голосов
/ 24 февраля 2020

Nethermin это были глупые ошибки !!

Я просто делаю запрос на http://127.0.0.1: 8000 / post / 4 / , и это работает;

Так что post / 1-3 просто не выходят.

Извините за мою глупость

0 голосов
/ 23 февраля 2020

Я думаю, что согласно моему анализу вы пишете post_detail.py вместо post_detail.html

Это файл .html, но по моей ошибке вы написали его .py. Вот почему он попытается найти post_datail. html, но не сможет найти этот файл и выбросить 404 page not found error

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...