如何在DetailView中使用PK(主键)字段以外的其他字段进行查询

杰森 tk

网址.py

urlpatterns = [
    url(r'^employee/(?P<emp_no>[0-9]+)/$', TitleDetail.as_view(), name='e-title'),  
    # /employee/10001/
    ]

视图.py

class TitleDetail(DetailView):
    model = Title
    pk_url_kwarg = "emp_no"

    def get_context_data(self, **kwargs):
        context = super(TitleDetail, self).get_context_data(**kwargs)
        context['title_list'] = Title.objects.filter(emp_no_id=self.kwargs['emp_no'])
        return context

模型.py

class Title(models.Model):
    emp_no = models.ForeignKey(Employee)
    title = models.CharField(max_length=50)
    from_date = models.DateField()
    to_date = models.DateField()

数据库中的样本数据:

id          title            from_date   to_date     emp_no_id 
----------  ---------------  ----------  ----------  ----------
1           Senior Engineer  1986-06-26  9999-01-01  10001     
2           Staff            1996-08-03  9999-01-01  10002  

为什么它给我

找不到页面:找不到与查询匹配的标题。

YKL

事实上,你不必重写get_object方法,你需要做的只是定义一个合适的 slug 字段(不是pk_url_kwarg),如下所示:

class TitleDetail(DetailView):
    model = Title
    slug_field = "emp_no"
    slug_url_kwarg = "emp_no"

如果你想看看后面发生了什么这里是源代码。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

使用主键以外的其他字段的Yii模型关系

如何使用django模型中的其他字段生成主键

如何在视图中使用关系字段访问其他模型中的字段(odoo)

cakePHP:通过使用除主键以外的其他字段在数据库中查找行?

如何在WTForms字段中使用特殊字符(其他语言)?

如何在Django中的“选择”字段中使用户定义“其他”?

如何在数据透视表Laravel中使用其他字段

如何在 Python 中使用文本字段对 MySQL 进行查询?

如何在Express JS中使用特定字段而不是ID进行查询

React Admin:我可以在<ReferenceInput>中使用除“ id”以外的其他字段吗?

如何在elasticsearch的索引字段中使用不查询

如何在PostgreSQL中使用递归查询连接字段值?

如何在mongodb查询中使用变量作为字段值?

如何在Django查询中使用列表来添加字段

Postgres:如何在子查询中使用字段的值

如何通过ID以外的其他字段从Kivik获取文档

如何搜索除id以外的其他字段

Logstash-grok使用消息以外的其他字段

如何在mongoDB中的$ group中使用其他自定义字段中的count / {$ sum:1}?

如何在前端使用javascript根据项目内的其他字段对项目数组进行排序

如何在Django 1.6模型固定装置中使用某些字段代替主键?

如何在Django中使用其他模型的主键作为模型名称生成模型

如何进行查询以查找包含字段的记录,该字段的值包含在其他条目中?

嘿,为什么我无法在Django中使用非主键字段进行raq查询,却找不到这样的表

如何使用猫鼬返回基于其他字段的字段

如何使用awk根据其他字段总结字段

如何使用连接的其他字段 Django 自动填充字段

如何在 React 中的函数中进行其他操作后清理输入字段?

如何在弹性搜索中基于createdDate和其他字段进行搜索