繁体   English   中英

过滤外键

[英]Filtering on foreign keys

我生成QuerySet如下:

def get_queryset(self):
    return Article.objects.filter(foreignkey=self.kwargs['value'])

该值是这样生成的:

<a href="{% url 'someview' value %}">anchor</a>
url(r'^(?P<value>\w+)/$', someview.as_view(), name='someview')

当value为整数时,一切正常,但是当我将value作为字符串传递时,我收到:

ValueError: "invalid literal for int() with base 10"

您正在将字符串传递给外键的主键,默认情况下它是整数。 如果要根据外键字段进行过滤使用

def get_queryset(self):
    return Article.objects.filter(foreignkey__valuefield=self.kwargs['value'])

来源https://docs.djangoproject.com/en/dev/topics/db/queries/#filters-can-reference-fields-on-the-model

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM