2013-08-22 56 views
0

我有一个模型VideoCategory其是ForeignKeyVideos模型Django的:如何避免表字段的硬编码值

class VideoCategory(models.Model): 
    name = models.CharField(max_length=100) 
    slug = models.SlugField(max_length=150) 

* 上述模型将具有表,该表是PK一个id字段*

网页我想显示仅特定类别的影片之一,说的类别名称为“教学视频”和id是107

然后我做了什么: 我构建了一个查询ID的基础上,如: 我coud已使用的名称字段,但它不会解决任何问题

Videos.objects.filter(category__id=107)[:1] // 107 is hard coded 

这将打破代码时表中的编号被更改或删除(这是相当可能的)。

有没有办法解决这个问题?

+0

你是如何确定的类别i'instuctional videos'是107的id?有没有办法获得教学视频的对象ID? – karthikr

+0

右侧数据库表 – navyad

+0

什么是用例?我的意思是代码中的内容让你请求'Videos.objects.filter(category = 107)'? – karthikr

回答

0

你需要的是关键字 “_set”:

VideoCategory.objects.get(name="my_category_name").Videos_set.all()