【Django Rest Framework】TypeError: __init__() got an unexpected keyword argument 'name'

前端Vue问题描述:  通过面包屑导航,无法获取导航分类对应商品列表 

后端问题描述:# 报错提示  File "D:\Envs\vueshop\lib\site-packages\django_filters\filterset.py", line 258, in form
    Form = self.get_form_class()
  File "D:\Envs\vueshop\lib\site-packages\django_filters\filterset.py", line 250, in get_form_class
    for name, filter_ in self.filters.items()])
  File "D:\Envs\vueshop\lib\site-packages\django_filters\filterset.py", line 250, in <listcomp>
    for name, filter_ in self.filters.items()])
  File "D:\Envs\vueshop\lib\site-packages\django_filters\filters.py", line 140, in field
    self._field = self.field_class(label=self.label, **field_kwargs)
  File "D:\Envs\vueshop\lib\site-packages\django\forms\fields.py", line 329, in __init__
    super().__init__(max_value=max_value, min_value=min_value, **kwargs)
  File "D:\Envs\vueshop\lib\site-packages\django\forms\fields.py", line 253, in __init__
    super().__init__(**kwargs)
TypeError: __init__() got an unexpected keyword argument ‘name‘

因为报错内容中多次提到了django_filters,所以主动去filter文件中寻找name  pricemin = django_filters.NumberFilter(name=‘shop_price‘, help_text="最低价格", lookup_expr=‘gte‘)

后经百度查找得知,Django2版本之后,这里用field_name 代替了 name   pricemin = django_filters.NumberFilter(field_name =‘shop_price‘, help_text="最低价格", lookup_expr=‘gte‘) 

至此问题解决!

  

【Django Rest Framework】TypeError: __init__() got an unexpected keyword argument 'name'

原文地址:https://www.cnblogs.com/bk770466199/p/12686599.html

时间: 2024-07-29 23:46:25

【Django Rest Framework】TypeError: __init__() got an unexpected keyword argument 'name'的相关文章

TypeError: __init__() got an unexpected keyword argument &#39;strict&#39;

使用requests发请求时发生报错 TypeError: __init__() got an unexpected keyword argument 'strict' 莫慌,不是你代码写错了,是因为请求模块requests不是最新的 只需要 pip install requests --upgrade 就OK了 TypeError: __init__() got an unexpected keyword argument 'strict' 原文地址:https://www.cnblogs.c

Python报错:TypeError: __init__() got an unexpected keyword argument &#39;io_loop&#39; 原因及解决方案

今天打开一个Python文件时,报错提示: TypeError: __init__() got an unexpected keyword argument 'io_loop' 明明是从旧电脑上拷贝到新电脑上的文件,之前运行是OK的,新电脑上运行怎么就报错了呢? 错误原因: 配置python环境时,默认tornado版本是最新的版本(恰好我新电脑重新配置了python环境,所以安装了最新版本),但是在4.0版本之后就废弃了io_loop参数. 解决方案: 1. 先卸载当前安装的tornado p

django2.1发生Django TypeError: render() got an unexpected keyword argument &#39;renderer

1. 修改 xadmin 源代码1.在Python终端输入命令help(‘xadmin’) 查看xadmin安装位置 得到如下输出 FILE /root/anaconda3/envs/learndjango/lib/python3.5/site-packages/xadmin/__init__.py122.进入xadmin安装路径,编辑xadmin/views/dashboard.py, 搜索所有xadmin 下的代码,有通通给这个方法加参数 renderer=None #render() go

记录 TypeError: render() got an unexpected keyword argument &#39;renderer&#39; 错误

在网上看到MXShop这个项目,适合Python, Django + drf 进阶的,其中遇到 TypeError: render() got an unexpected keyword argument 'renderer', 在百度一番后发现是Django集成DjangoUeditor,才导致这个错误的.网上有什么资料都是去改Django的源文件,但是我觉得这样很不好,因为部署到新环境的时候,都要手动去改一下Django源文件,这样太麻烦了 所以打算在DjangoUeditor上找原因,最后

senlin __init__() got an unexpected keyword argument &#39;additional_headers&#39;

从senlin源码重新编译更新了服务,然后执行 senlin的 cli就遇到了错误: __init__() got an unexpected keyword argument 'additional_headers' 谷歌了一下,找到这份开发者的聊天日志: http://eavesdrop.openstack.org/irclogs/%23senlin/%23senlin.2016-08-16.log.html 知道是client没有更新的缘故,于是我执行了: $sudo pip instal

【Django REST framework】DRF快速编写接口(查询所有数据、分页、搜索、过滤、排序、新增单条数据)

所需依赖包及版本号 [packages]django = {index = "https://pypi.douban.com/simple",version = "==2.2.10"}djangorestframework = "==3.11.0"markdown = "==3.2.1"pygments = "==2.5.2"django-filter = "==2.2.0"django

【python3】 django2.0 在生成数据库表时报错: TypeError: __init__() missing 1 required positional argument: &#39;on_delete&#39;

python: 3.6.4 django: 2.0 models.py 代码如下 # coding: utf-8 from django.db import models from django.contrib.auth.models import User # Create your models here. class Category(models.Model): name = models.CharField(max_length=100) class Tag(models.Model)

执行python manage.py makemigrations时报错TypeError: __init__() missing 1 required positional argument: &#39;on_delete&#39;

在执行python manage.py makemigrations时报错: TypeError: __init__() missing 1 required positional argument: 'on_delete' 解决方法: 在连接外键时加上: on_delete=models.CASCADE 执行python manage.py makemigrations时报错TypeError: __init__() missing 1 required positional argument

TypeError: __init__() missing 1 required positional argument: &#39;on_delete&#39;

在django2.0后,定义外键和一对一关系的时候需要加on_delete选项,此参数为了避免两个表里的数据不一致问题,不然会报错:TypeError: __init__() missing 1 required positional argument: 'on_delete' on_delete有CASCADE.PROTECT.SET_NULL.SET_DEFAULT.SET()五个可选择的值CASCADE:此值设置,是级联删除.PROTECT:此值设置,是会报完整性错误.SET_NULL:此