我有两个模型,拥有者和拥有一对一关系的实体。
class Owner(models.Model):
name = models.CharField(max_length=255)
.....
def __str__(self):
return self.name
class Entity(models.Model):
owner = models.OneToOneField(Owner, blank=True, null=True, on_delete=models.CASCADE)
name = models.CharField(max_length=255)
......
对于Django Admin,请搜索我拥有的字段:
class EntityAdmin(admin.ModelAdmin):
.....
search_fields = ('email', 'name', 'owner')
如果我尝试搜索,则会出现以下错误:
Related Field got invalid lookup: icontains
如果我删除了owner
,但是我仍然想按owner
进行搜索
答案 0 :(得分:1)
如the docs所示,您需要遵循关系到实际的文本字段。所以:
search_fields = ('email', 'name', 'owner__name')