django - 在管理员中按外键 ID 搜索

标签 django search django-admin foreign-keys

我试图实现一些看似简单的事情,但我找不到任何答案,无论是在谷歌还是在这里。我有一个 Django 模型,非常简单:

class Shipment(models.Model):
    id = models.AutoField(primary_key=True)
    transaction = models.ForeignKey(Transaction)

我希望能够通过 transaction.id 在我的 Shipment Admin 页面中进行搜索。为了清楚起见,
我想要这个(这段代码显然不起作用):
class ShipmentAdmin(admin.ModelAdmin):
    list_display = ('id', 'transaction')
    search_fields = ['id', 'transaction.id']

这行不通,因为 transaction.id 没有命名字段。任何的想法?
“搜索”是指能够将我的交易 ID 插入货件管理页面的搜索框中,按“搜索”并自动检索适当的交易。

最佳答案

与其他管理选项一样,您需要使用 __ for foreign key例如

search_fields = ['id', 'transaction__id']

关于django - 在管理员中按外键 ID 搜索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9174059/

相关文章:

java - hibernate 搜索 : Search any part of the field without losing field's content while indexing

c++ - 在点数组中找到最小值的算法

django - 有没有办法从 django 管理更改列表上的对象中删除用户无权更改的超链接?

python - 从 Django 管理员调试

python - Django 2.0 试图用正则表达式获取主键但我得到 404

javascript - 如何将 python/Django 列表/字典转换为 javascript

python - auto_now_add 字段覆盖我的输入

python - models.py 中的 models.Model 参数到底指的是什么?

javascript - 什么是最好的 javascript 自动建议搜索算法

jquery - 当添加权限为 False 时,Django-grappelli 添加按钮在内联中可见