从django应用程序输出数据

时间:2012-06-17 16:51:37

标签: django django-models django-templates

这可能是非常简单的事情,但由于某些原因我似乎无法做到。

我正在尝试从我创建的博客(app)输出一些数据。博客工作正常,将内容放在我创建的模型字段中,并输出到我指定的模板。

但是当试图将信息输出到主页时,没有任何显示。我对django很新,我想我可能会遗漏一些东西。

我是否需要在应用程序之外的页面中包含某些内容?或者我需要在urls文件中设置一些东西吗?

我希望这是有道理的,因为我不认为这有什么不复杂但我只是觉得我错过了什么!

感谢。

CODE:

url(r'blog/(?P<slug>[-\w]+)/$', 'blog.views.blog', name="blog"),
   url(r'blog/', 'blog.views.blog_index', name="blog_index"),


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', {
        'blog': blog
    }, context_instance=RequestContext(request))





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
        })

1 个答案:

答案 0 :(得分:0)

您是说要mysite.com/blog/正确显示,但您还希望它成为mysite.com的网站索引页面?

如果是这样,您需要在项目urls.py文件中添加新模式,如下所示:

url(r'^$', 'blog.views.blog_index')

执行此操作会使mysite.com/blog/mysite.com路由到同一视图。