【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')

至此問題解決!

  


 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM