所以我正在研究一些 Django,但对它有点陌生。我有这段代码:
from django.shortcuts import render, render_to_response, get_object_or_404
from .models import Article
from django.views.generic import TemplateView
def view_post(request, slug):
return render_to_response('news/article.html', {'post': get_object_or_404(Article, slug=slug)})
class ArticleView(TemplateView):
template_name = "news/article.html"
def get(self, request):
article = Article.objects.all()
return render(request, self.template_name ,{'article': article })
如何将其写入一个视图,以便我可以在 urls.py 中使用它?
现在这是我的 urls.py:
from django.conf.urls import url, include
from .views import view_post
urlpatterns = [
url(r'^blog/view/(?P<slug>[^\.]+)', view_post , name='view_blog_post'),
]
我怎样才能把它们加在一起?因为我还希望这些变量在我的模板中可用。
我想这就是你想要的。
class ArticleView(DetailView):
query_pk_and_slug = 'slug'
template_name = 'news/article.html'
context_object_name = 'post'
model = Article
def get_context_data(self, **kwargs):
context = super().get_context_data(**kwargs)
context['article'] = Article.objects.all()
return context
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句