Резюме:
Цель этого конкретного Django веб-приложения - просто показать некоторый текст lorem ipsum на домашней странице, например сообщение в блоге. Django не обслуживает содержание моего сообщения в блоге. Я знаю, что проблема связана либо с моим views.py, либо с urls.py (или с обоими).
Подробности:
У меня есть данные, объявленные внутри моих моделей .py. У меня есть файл views.py для создания экземпляра модели. Я перенес sqlite и успешно вошел в панель управления администратора и ввел некоторые данные-заполнители.
Я пытаюсь получить Django для обслуживания содержимого-заполнителя, которое я ввел в панель управления администратора, но вместо этого оно пустое.
Вот как выглядит мой тестовый пример: https://i.imgur.com/IuOl3G4.jpg Чтобы описать это, вы можете увидеть элементы заголовка «Сообщение в блоге», «Дата», «Изображение» и «Основной текст HTML», но ничего не отображается.
Вот urls.py моего приложения:
from django.urls import path, include
from . import views
urlpatterns = [
path('', views.mortems, name='home'),
]
Я попытался заменить кавычки для первого параметра path () на alls/landings
. Я пробовал поменять местами параметр имени с home
на mortems
. Я также пробовал использовать mortem
(без s
). Ни одно из этих изменений не помогает.
Я также пробовал поиск в Google (с различными вариантами):
- 'основной текст django не отображается шаблон'
- 'django не отображается текстовое содержимое '
Это вызвало (среди прочего) ТАК вопросы и ответы, которые связаны со звуком, но полностью отличаются от моей проблемы:
Вот my app's views.py:
from django.shortcuts import redirect, render, get_object_or_404
from mortems.models import Mortem
def mortems(request):
mortem = Mortem.objects.order_by('-pub_date')
context = {'mortem':mortem}
return render(request, 'alls/landings.html', context)
Что бы это ни стоило, вот соответствующие строки в моей модели:
class Mortem(models.Model):
title = models.CharField(max_length=161)
pub_date = models.DateTimeField()
image = models.ImageField(upload_to='media/')
body = models.TextField()
now = datetime.datetime.now()
Кроме того, вот мой шаблон с соответствующими проблемами c строки (42-50):
<h1> BLOG POST:</h1>
<h4>Date: {{ mortem.pub_date_preference }}</h4>
<br />
Image: <img src="{{ mortem.image.url }}" class="img-responsive center-block" style="max-height:300px;" />
<br />
<!-- Body text should go here : -->
Body Text:
<p>{{ mortem.body|safe }}</p>
Полный исходный код доступен на GitHub. Вот исходный код приложения mortems в частности.
Для щедрых пользователей SO, у которых есть время, я думаю, я принимаю запросы на вытягивание. хаха