2016-02-11 72 views
0

的一部分,我有代码的列表:查询集过滤了许多

21000000 Code 1 
21000001 Code 2 
22000000 Code 3 
22000001 Code 4 
22002100 Code 5 

的代码的模型是:

class Category(models.Model): 
    code_id = models.CharField(max_length=50) 

我想过滤仅与2100XXXX启动码。当我使用启动时,它似乎不能识别数字。纠正查询集调用的正确方法是只对2100XXXX进行筛选。目前,我的代码是:

DB.objects.filter(code__startswith='2100') 

这应该拿起代码1和2,没有其他人。

感谢

+0

想必你的模型字段是'CharField'或'TextField'?什么是返回的查询集?你可以发布你的模型的相关部分? –

+0

@添加TimmyO'Mahony模型。 –

+0

这是你的确切代码吗?你的字段被称为'code_id',但你的查询使用'code'。 –

回答

1

您已经命名自己的领域code_id和你的过滤器是:code__startswith

这应该工作:

DB.objects.filter(code_id__startswith='2100')