#python #django #templates #view #frame
#python #django #шаблоны #Вид #фрейм
Вопрос:
Почему сообщения не публикуются в шаблонах? Я пытаюсь создать стандартную страницу блога, и прямо сейчас в этом проекте у меня проблемы с шаблоном и views, дело в том, что я хочу отображать записи, которые имеют тот же символ, что и URL, но я не понимаю, почему он отправляет меня к else в шаблоне, в котором говорится «извините, эта страница не существует»
urls.py (Я покажу только соответствующий)
from django.urls import path
from app1 import views
from .views import PostView, ArticleDetailView, AddPostView, UpdatePostView, DeletePostView, AddCategoryView, CategoryView, LikeView, MyPostsView, AddCommentView, UpdateCommentView, DeleteCommentView
app_name = 'app1'
urlpatterns = [
path('stock/<str:sym>/', views.StockView, name = 'stock'),
]
views.py
def StockView(request, sym):
stock_posts = Post.objects.filter(stock__symbol=sym.lower())
return render(request, 'app1/stockview.html', {'stock':stock_posts})
models.py
class StockNames(models.Model):
name = models.CharField(max_length=255)
symbol = models.CharField(max_length=255)
def __str__(self):
return self.symbol
class Post(models.Model):
title = models.CharField(max_length= 255)
header_image = models.ImageField(null = True, blank = True, upload_to = 'images/')
author = models.ForeignKey(User, on_delete=models.CASCADE)
body = RichTextField(blank = True, null = True)
#body = models.TextField()
post_date = models.DateField(auto_now_add=True)
category = models.CharField(max_length=255, default='coding')
snippet = models.CharField(max_length=255)
likes = models.ManyToManyField(User, related_name = 'blog_posts')
stock = models.ForeignKey(StockNames, null=True, on_delete=models.CASCADE)
def total_likes(self):
return self.likes.count()
def __str__(self):
return self.title ' | ' str(self.author)
def get_absolute_url(self):
return reverse('app1:article-detail', args=(self.id,))
шаблон
{% extends "app1/base.html" %}
{% block body_block %}
{{stocks}}
{% endblock %}
Заранее спасибо!!
Комментарии:
1. похоже, вам нужно разделить эту огромную задачу на части.. Вам нужно тщательно отлаживать.
2. Помните, что внешний ключ содержит идентификатор связанной строки. Для фильтрации по символу фильтр должен быть чем-то вроде
stock__symbol=sym.lower()
. Может быть хорошей идеей добавить индексы для фильтрации столбцов поиска.3. Да, я уже пробовал это, но он по-прежнему показывает «Извините, эта страница не существует»