0

这肯定是一个新手错误,我已经用谷歌搜索了好几个小时,但没有找到可行的解决方案。我假设部分原因是不确定要准确搜索什么。

我正在开发一个小型博客应用程序,我有用户、帖子、博客评论的模型,仅此而已。

我为 blogIndex 和 blogPost 编写了视图,即所有帖子的列表和特定帖子的列表。

blogIndex 在它所属的视图中工作,它显示 {{ post.content }} {{ post.author.firstname }} 等没有问题。

但是 blogPost 不是。视图如下所示:

def blogPost(request, postID):
    blogPost = post.objects.get(id=postID)
    return render_to_response("blog_post.html", {"post":post})

blog_post.html 如下所示:

title: {{ post.title }}</br>
content: {{ post.content }}</br>
datetime: {{ post.datetime }}</br>
author: {{ post.author.first_name }} {{ post.author.last_name }}</br></br>

{% for comment in post.blogcomment_set.all %}
   Comment.firstName: {{comment.firstName}}</br>
   {{comment.lastName}}</br>
   {{comment.email}}</br>
   {{comment.datetime}}</br>
   {{comment.content}}</br>
{% endfor %}

使用 blog_index.html 中的相同代码,我得到了标题、内容等的正确列表。

这是来自 urls.py:

url(r'^blog/$', blogIndex),
url(r'^blog/(?P<postID>\d+)$', blogPost),

我怀疑正则表达式有问题?我怀疑观点更可能有问题?

这是 blogIndex 的视图,它正在工作,但可能有助于回答:

def blogIndex(request):
    posts = post.objects.all()
    return render_to_response("blog_index.html", {"posts":posts})

最后,这是 blog_index.html 中的代码:

{% for post in posts %}
<h3><a href="/blog/{{ post.id }}">{{ post.title }}</a></h3>
{{ post.content }}
<p>Posted by: {{ post.author.first_name }} {{ post.author.last_name }}<br /> At:    
{{ post.datetime }}</p>     

<p><strong>Comments: </strong><br />
    {% for comment in post.blogcomment_set.all %}
    By: {{ comment.firstname }}<br />
    Title: {{ comment.title }},<br />
    Content: {{ comment.content }}<br />
    Date: {{ comment.datetime }}</p>
    {% endfor %}  
{% endfor %}

指向可能的解决方案的链接或指出我目光狭隘的鼻子都是受欢迎的输入。

4

1 回答 1

4
def blogPost(request, postID):
    blogPost = post.objects.get(id=postID)
    return render_to_response("blog_post.html", {"post":post})

应该:

def blogPost(request, postID):
    blogPost = post.objects.get(id=postID)
    return render_to_response("blog_post.html", {"post":blogPost})
于 2012-04-03T21:08:00.090 回答