我如何选择两个字段?

时间:2014-11-07 12:46:17

标签: python django

我在Django写了一个网站,我想要有两个博客。

对于每个博客,我需要三个变量:一个名称(我在管理部分写我的帖子时选择 - 我是否正确理解这是选择?),一个标题(对于视图),一个blog_url (为网址)。

应该有一定数量的博客,所以我可以在撰写帖子时从下拉菜单中选择我的选择。我可以在an example in the Django reference之后的标题和网址之间只使用一个 - 标题就是:

class Post(models.Model):    
    BLOG_TITLE = (
            ("Title 1", "first"),
            ("Title 2", "second"),
        )
    blog_title = models.CharField(
            max_length=20,
            choices=BLOG_TITLE,
            blank=True)

我认为我需要像

这样的东西
(["Title", "url"], "blog"),

而不是

("Title", "blog"),

我应该定义一个类Blog并通过Post中的ForeignKey引用它吗?怎么样?

有什么想法吗?谢谢!

1 个答案:

答案 0 :(得分:4)

您应该将外键关系用于新模型,例如Blog。

示例:

class Blog(models.Model):
    title = models.CharField(max_length=20)
    url = models.URLField()

class Post(models.Model):    

    blog = models.ForeignKey(Blog)

访问数据:

post = Post.objects.get(id=1) 
post.blog.title

您应该访问模板中的数据。

查看示例:

def postview(request):
    return render('template_xyz.html', {'object': Post.objects.get(id=1) }

模板示例:

<h1>{{ object.blog.title }} </h1>