django-xadmin列表页filter关联对象搜索问题

环境:xadmin-for-python3 python3.5.2 django1.9.12

问题描述:Product ProductSku两个实体,ProductSku FK外键关联Product ,Product 列表页的filter不支持productsku__sku_code的搜索,主要页面加载时报Product has no field named ‘sku_code‘

解决办法:

xadmin\util.py文件中def get_model_from_relation(field):方法366行的BUG,原366行代码是return field.model,请更改为:return field.related_model即可
def get_model_from_relation(field):
    if is_related_field(field):
        return field.related_model # 第366行 return field.model
    elif getattr(field, ‘rel‘):  # or isinstance?
        return field.rel.to
    else:
        raise NotRelationField
				
时间: 2024-10-07 02:16:59

django-xadmin列表页filter关联对象搜索问题的相关文章

列表页的动态条件搜索

在我是如何做列表页的,我提到了列表页的动态条件搜索,主要的目的就是在View中能够动态的指定条件,而后端的数据查询逻辑尽量不变.之前在搞.net的时候,我们可以借助强大的ExpressionTree来解决,之前有一篇是微软的EntityFramework表达式转换:Linq to Entity经验:表达式转换,是将一种表达式转换成数据库组件能够识别的表达式,只不过那篇没有涉及到View中的条件而已.页面动态查询的最简单的方法就是解析View中特定的值来得到后台组件能够识别的查询逻辑.    我们

第三百八十九节,Django+Xadmin打造上线标准的在线教育平台—列表筛选结合分页

第三百八十九节,Django+Xadmin打造上线标准的在线教育平台-列表筛选结合分页 根据用户的筛选条件来结合分页 实现原理就是,当用户点击一个筛选条件时,通过get请求方式传参将筛选的id或者值,传入逻辑处理就行数据库条件查询,将查询条件值在返回html页面判断是否是选中样式,最后将所有需要关联的筛选请求加上彼此逻辑处理传回来的查询条件值 html请求传参 黄色背景为请求传参 红色背景为逻辑处理传过来的查询条件判断样式 <div class="wp butler_list_box li

kingadmin后台(2)、对象列表页功能开发

目录 页面展示 对象列表 过滤功能 搜索功能 action功能 排序 页面展示 对象列表 urls.py from django.conf.urls import url from king_admin import views urlpatterns = [ # model对象列表页 url(r'^(\w+)/(\w+)/$', views.model_obj_list, name='model_obj_list') ] views.py from django.shortcuts impor

PHP.26-TP框架商城应用实例-后台2-商品列表页-搜索、翻页、排序

商品列表页 1.翻页 控制器GoodsController.class.php添加方法lst(),显示列表页 在商品模型GoodsModel.class.php类中添加search方法 /** *实现翻页.搜索.排序 * */ public function search($perPage = 5) //$perPage控制显示条数 { /***********翻页***********/ //取出总的记录数 $count = $this->count(); //生成翻页类的对象 $pageOb

Atitit.列表页and查询条件的最佳实践(1)------设定搜索条件and提交查询and返回json数据

Atitit.列表页and查询条件的最佳实践(1)------设置查询条件and提交查询and返回json数据 1. 1.?配置条件字段@Conditional 1 1 2. 2.?配置条件字段显示类型为[email protected](displayType?=?displayType.rang,?rangStart?=?rang.start,?rangEnd?=?rang.end,op=op.range) 1 3. #----show  condition  page  list 1 4.

[django]详情页列表页

详情页列表页 列表页展示titile--这个模型的部分字段 详情页展示这个模型的所有字段 我想看下related_name这个从主表取子表数据 取数据--官网投票例子 https://docs.djangoproject.com/en/2.1/intro/tutorial02/ polls/models.py from django.db import models class Question(models.Model): question_text = models.CharField(ma

第三百八十五节,Django+Xadmin打造上线标准的在线教育平台—登录功能实现,回填数据以及错误提示html

第三百八十五节,Django+Xadmin打造上线标准的在线教育平台-登录功能实现 1,配置登录路由 from django.conf.urls import url, include # 导入django自在的include逻辑 from django.contrib import admin from django.views.generic import TemplateView # 导入django自带的TemplateView逻辑 import xadmin # 导入xadmin fr

django+xadmin在线教育平台(十五)

7-4 课程机构列表页数据展示2 前去html中进行数据填充 mark 可以看到所有城市是通过a标签,当前选中城市为active. mark 之后把下面的写死的城市删除掉. mark 这时就是我们在后台添加的数据了 mark 可以看到每个课程机构都是一个dl 同理使用for循环. 如何将imageField转换为图片地址 数据库中img存放的是字符串:相对路径 mark mark 上图这种取法会取出一个相对地址. mark 将setting中配置的mediaurl放在前面可以补全地址. 设置me

django+xadmin在线教育平台(十六)

7-7 modelform 提交我要学习咨询1 对应表userask form会对字段先做验证,然后保存到数据库中. 可以看到我们的forms和我们的model中有很多内容是一样的.我们如何让代码重复利用呢? 使用modelform解决这个问题. # encoding: utf-8 from django import forms from operation.models import UserAsk __author__ = 'mtianyan' __date__ = '2018/1/12