何年もの間これに固執しています。現在、Djangoを学習しており、他のサイトでいくつかの作業を行っています。私自身のサイトを構築し始めて、ビュー/URLで立ち往生しています。
ニュース記事を表示したい「ブログ」というアプリを作成しました。
これまでのところ、正常に機能しているテンプレートにすべてのブログアイテムをロードしました。ただし、[続きを読む]をクリックしようとすると、ページが投稿自体のページに移動しません。ただし、ロードするページが表示される場所には、正しいURLがロードされることが示されます。だから、私が望むようにナメクジを引っ張っていますが、ボタンをクリックすると、同じページにとどまります。
ブログの投稿をホームページにロードしてもらうと、なんとか完璧に機能するようになります。ただし、明らかに自分のホームページにしたくないので、/blog/にロードしてもらいたいです。
私はすべてのドキュメントを読みましたが、これまでのチュートリアルとは少し異なります。とにかくここに私のコードのいくつかがあります、本当に誰かが私を助けてくれることを願っています!
from django.http import HttpResponse
from django.shortcuts import render_to_response, get_object_or_404
from django.template import RequestContext
from blog.models import Blog, NewsPost
def blog_index(request):
blogs = Blog.objects.filter(active=True)
return render_to_response('blog/index.html', {
'blogs':blogs,
}, context_instance=RequestContext(request))
def blog(request, slug):
blog = get_object_or_404(Blog, active=True, slug=slug)
return render_to_response('blog/blog_post.html', {
'blogs': blogs
}, context_instance=RequestContext(request))
url(r'blog/', 'blog.views.blog_index', name="blog_index"),
url(r'blog/(?P<slug>[-\w]+)/$', 'blog.views.blog', name="blog"),
//モデル
class Blog(TimeStampedActivate):
title = models.CharField(max_length=255, help_text="Can be anything up to 255 character")
slug = models.SlugField()
description = models.TextField(blank=True, help_text="Give a short description of the news post")
content = models.TextField(blank=True, help_text="This is the main content for the news post")
user = models.ForeignKey(User, related_name="blog")
def __unicode__(self):
return self.title
@models.permalink
def get_absolute_url(self):
return ('blog', (), {
'slug': self.slug
})
ありがとう、
ジョシュ