Как отобразить атрибуты модели в django в веб-приложении

Я создаю сайт портфолио с помощью djnago. Теперь предположим, что у меня есть блог, и я хочу показать заголовок блога, небольшое резюме и ссылку. Я создал модель, как показано ниже:

class Blog(models.Model):
    blog_title=models.CharField(max_length=50)
    summary=models.TextField(blank=False)
    blogLink=models.URLField()

    def __str__(self):
        return self.blog_title
    def get_summary(self):
        return self.summary
    def get_link(self):
        return self.blogLink

Я могу заполнить эти значения на странице администратора, но как я могу показать это в веб-приложении, чтобы другие люди могли получить доступ к ссылкам. У меня также есть контекстный процессор для данных пользователя, таких как имя, фамилия и т.д. Должен ли я иметь различные контекстные процессоры для различных классов, которые я создаю. Я только начинающий и пробую проекты для самосовершенствования. I

Нужно написать view запрос на запись в блоге и отправить его на фронт-энд.

views.py

from django.http import Http404
from django.shortcuts import render
from polls.models import Blog

def my_blog_detail_view(request, some_id):
    try:
        q = Blog.objects.get(pk=some_id)
    except Blog.DoesNotExist:
        raise Http404("Poll does not exist")
    return render(request, 'blog/my_blog_article.html', {'blog': q})

и установите путь в вашем urls.py

urls.py

from django.urls import path

from . import views

urlpatterns = [
    path('articles/<int:some_id>/', views.my_blog_detail_view),
]

А также необходимо написать Шаблон. Для приведенного выше примера my_blog_article.html.

Вы можете поискать на YouTube или в документации Django учебник по первым представлениям и шаблонам.

Также со ссылкой наblogLink=models.URLField(). Я не знаю, является ли эта ссылка на блог для блога в вашем проекте Django или это ссылка на внешний блог. Если это для вашего проекта Django, вам следует использовать поле date и slug (заголовок) в вашей модели и позже в качестве ссылки. Таким образом, позже на вашем сайте ссылка будет выглядеть следующим образом www.mysite.xy/blog/2022/07/14/my-first-article смотрите здесь в документации

Вернуться на верх