zoukankan      html  css  js  c++  java
  • related Field has invalid lookup: icontains 解决方法

    models.py 文件

    # coding:utf8
    from django.db import models

    class Book(models.Model):
     

       
        name = models.CharField(max_length=255)
        title = models.CharField(max_length=255)
        price = models.IntegerField()
        ...
        
    class Category(models.Model):
        
        CATEGORY_CHOICES = (
            ('00', 'English'),
            ('01', 'Computer'),
        )
        
        book = models.ForeignKey(Book)
        category = models.CharField(max_length=255, choices=CATEGORY_CHOICES)
        remark = models.CharField(max_length=255)
        ...

    admin.py 文件(以 category 为例)
     
    转自:http://blog.sina.com.cn/s/blog_90bc5fc601012rk0.html

    # coding: utf8
    from django.contrib import admin
    from django import forms

    from .models import Category

    class CategoryAdmin(admin.ModelAdmin):

        search_fileds = ('book__name', 'book__title', 'book__price', 'category')  # 设置搜索栏范围,如果有外键,要注明外键的哪个字段,双下划线
        list_display = ('book', 'category')  # 在页面上显示的字段,若不设置则显示 models.py 中 __unicode__(self) 中所返回的值
        list_display_links = ('category')  # 设置页面上哪个字段可单击进入详细页面
        fields = ('category', 'book')  # 设置添加/修改详细信息时,哪些字段显示,在这里 remark 字段将不显示
        
    admin.site.register(Category, CategoryAdmin)

    [说明]
    在使用 Django admin 系统中的搜索时可能会出现“related Field has invalid lookup: icontains”错误,主要原因是外键查询是需要指定相应的字段的。外键不应该只是一个model,而该是另一个表的明确的一个字段。所以我们需要指定特定的字段 "本表外键字段__外键所在表需查询字段"。
  • 相关阅读:
    刷题第一天各种蒙圈
    如何用MATLAB读stl并显示点云文件
    MATLA总结三
    word里如何将模板的样式(标题啊、字体啊)导入到另外的模板里
    Asp.Net跨平台:Ubuntu14.0+Mono+Jexus+Asp.Net
    Newtonsoft.Json输出Json时动态忽略属性
    Redis 系列 (一) StackExchange.Redis的使用
    jquery选择器如何获取父级元素、同级元素、子元素
    多线程的应用小结
    nginx1.18支持http2.0
  • 原文地址:https://www.cnblogs.com/fengff/p/8258556.html
Copyright © 2011-2022 走看看