首页 > 解决方案 > django AttributeError 'WSGIRequest' 对象没有属性 'get'

问题描述

//id找不到错误点,也没有搜索解决办法

/product/3 'WSGIRequest' 对象的 AttributeError 没有属性 'get' 请求方法:GET 请求 URL:http: //127.0.0.1 :8000/product/3 Django 版本:3.1.6 异常类型:AttributeError 异常值:
' WSGIRequest' 对象没有属性 'get' 异常位置:C:\Users\vudgh\anaconda3\lib\site-packages\django\forms\widgets.py,第 652 行,在 value_from_datadict Python 可执行文件:C:\Users\vudgh\ anaconda3\python.exe Python 版本:3.8.5 Python 路径:
['C:\Pytion_WorkSpoace\oto_shop', 'C:\Users\vudgh\anaconda3\python38.zip', 'C:\Users\vudgh\anaconda3\DLLs', 'C:\Users\vudgh\anaconda3\lib' , 'C:\Users\vudgh\anaconda3', 'C:\Users\vudgh\AppData\Roaming\Python\Python38\site-packages', 'C:\Users\vudgh\anaconda3\lib\site-packages', 'C:\Users\vudgh\anaconda3\lib\site-packages\win32', 'C:\Users\vudgh\anaconda3\lib\site-packages\win32\lib', 'C:\Users\vudgh\anaconda3\ lib\site-packages\Pythonwin'] 服务器时间:Thu, 08 Apr 2021 22:40:36 +0900

模板渲染时出错 在模板 C:\Pytion_WorkSpoace\oto_shop\templates\base.html 中,第 0 行出错

'WSGIRequest' 对象没有属性 'get'

1   <!DOCTYPE html>
2   <html lang="en">
3       <head>
4           <meta charset="UTF-8">
5           <meta name="viewport" content="width=device-width, initial-scale=1.0">
6           <title>{% block title %} {% endblock %}</title>
7           <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0-beta1/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-giJF6kkoqNQ00vy+HMDP7azOuL0xtbfIcaT9wjKHr8RbDVddVHyTfAAsrekwKmP1" crossorigin="anonymous">
8           <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0-beta1/dist/js/bootstrap.bundle.min.js" integrity="sha384-ygbV9kiqUc6oa4msXn9868pTtWMgiQaeYH7/t7LECLbyPA2x65Kgf80OJFdroafW" crossorigin="anonymous"></script>
9       
10      </head>

Traceback 切换到复制和粘贴视图

Environment:


Request Method: GET
Request URL: http://127.0.0.1:8000/product/3

Django Version: 3.1.6
Python Version: 3.8.5
Installed Applications:
['django.contrib.admin',
 'django.contrib.auth',
 'django.contrib.contenttypes',
 'django.contrib.sessions',
 'django.contrib.messages',
 'django.contrib.staticfiles',
 'django.contrib.humanize',
 'users',
 'product',
 'order',
 'board',
 'rest_framework']
Installed Middleware:
['django.middleware.security.SecurityMiddleware',
 'django.contrib.sessions.middleware.SessionMiddleware',
 'django.middleware.common.CommonMiddleware',
 'django.middleware.csrf.CsrfViewMiddleware',
 'django.contrib.auth.middleware.AuthenticationMiddleware',
 'django.contrib.messages.middleware.MessageMiddleware',
 'django.middleware.clickjacking.XFrameOptionsMiddleware']


Template error:
In template C:\Pytion_WorkSpoace\oto_shop\templates\base.html, error at line 0
   'WSGIRequest' object has no attribute 'get'
   1 : <!DOCTYPE html>
   2 : <html lang="en">
   3 :     <head>
   4 :         <meta charset="UTF-8">
   5 :         <meta name="viewport" content="width=device-width, initial-scale=1.0">
   6 :         <title>{% block title %} {% endblock %}</title>
   7 :         <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0-beta1/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-giJF6kkoqNQ00vy+HMDP7azOuL0xtbfIcaT9wjKHr8RbDVddVHyTfAAsrekwKmP1" crossorigin="anonymous">
   8 :         <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0-beta1/dist/js/bootstrap.bundle.min.js" integrity="sha384-ygbV9kiqUc6oa4msXn9868pTtWMgiQaeYH7/t7LECLbyPA2x65Kgf80OJFdroafW" crossorigin="anonymous"></script>
   9 :     
   10 :     </head>


Traceback (most recent call last):
  File "C:\Users\vudgh\anaconda3\lib\site-packages\django\template\base.py", line 829, in _resolve_lookup
    current = current[bit]
  File "C:\Users\vudgh\anaconda3\lib\site-packages\django\forms\boundfield.py", line 67, in __getitem__
    raise TypeError(

During handling of the above exception (BoundField indices must be integers or slices, not str.), another exception occurred:
  File "C:\Users\vudgh\anaconda3\lib\site-packages\django\core\handlers\exception.py", line 47, in inner
    response = get_response(request)
  File "C:\Users\vudgh\anaconda3\lib\site-packages\django\core\handlers\base.py", line 204, in _get_response
    response = response.render()
  File "C:\Users\vudgh\anaconda3\lib\site-packages\django\template\response.py", line 105, in render
    self.content = self.rendered_content
  File "C:\Users\vudgh\anaconda3\lib\site-packages\django\template\response.py", line 83, in rendered_content
    return template.render(context, self._request)
  File "C:\Users\vudgh\anaconda3\lib\site-packages\django\template\backends\django.py", line 61, in render
    return self.template.render(context)
  File "C:\Users\vudgh\anaconda3\lib\site-packages\django\template\base.py", line 170, in render
    return self._render(context)
  File "C:\Users\vudgh\anaconda3\lib\site-packages\django\template\base.py", line 162, in _render
    return self.nodelist.render(context)
  File "C:\Users\vudgh\anaconda3\lib\site-packages\django\template\base.py", line 938, in render
    bit = node.render_annotated(context)
  File "C:\Users\vudgh\anaconda3\lib\site-packages\django\template\base.py", line 905, in render_annotated
    return self.render(context)
  File "C:\Users\vudgh\anaconda3\lib\site-packages\django\template\loader_tags.py", line 150, in render
    return compiled_parent._render(context)
  File "C:\Users\vudgh\anaconda3\lib\site-packages\django\template\base.py", line 162, in _render
    return self.nodelist.render(context)
  File "C:\Users\vudgh\anaconda3\lib\site-packages\django\template\base.py", line 938, in render
    bit = node.render_annotated(context)
  File "C:\Users\vudgh\anaconda3\lib\site-packages\django\template\base.py", line 905, in render_annotated
    return self.render(context)
  File "C:\Users\vudgh\anaconda3\lib\site-packages\django\template\loader_tags.py", line 62, in render
    result = block.nodelist.render(context)
  File "C:\Users\vudgh\anaconda3\lib\site-packages\django\template\base.py", line 938, in render
    bit = node.render_annotated(context)
  File "C:\Users\vudgh\anaconda3\lib\site-packages\django\template\base.py", line 905, in render_annotated
    return self.render(context)
  File "C:\Users\vudgh\anaconda3\lib\site-packages\django\template\defaulttags.py", line 211, in render
    nodelist.append(node.render_annotated(context))
  File "C:\Users\vudgh\anaconda3\lib\site-packages\django\template\base.py", line 905, in render_annotated
    return self.render(context)
  File "C:\Users\vudgh\anaconda3\lib\site-packages\django\template\defaulttags.py", line 305, in render
    match = condition.eval(context)
  File "C:\Users\vudgh\anaconda3\lib\site-packages\django\template\defaulttags.py", line 889, in eval
    return self.value.resolve(context, ignore_failures=True)
  File "C:\Users\vudgh\anaconda3\lib\site-packages\django\template\base.py", line 671, in resolve
    obj = self.var.resolve(context)
  File "C:\Users\vudgh\anaconda3\lib\site-packages\django\template\base.py", line 796, in resolve
    value = self._resolve_lookup(context)
  File "C:\Users\vudgh\anaconda3\lib\site-packages\django\template\base.py", line 837, in _resolve_lookup
    current = getattr(current, bit)
  File "C:\Users\vudgh\anaconda3\lib\site-packages\django\forms\boundfield.py", line 78, in errors
    return self.form.errors.get(self.name, self.form.error_class())
  File "C:\Users\vudgh\anaconda3\lib\site-packages\django\forms\forms.py", line 172, in errors
    self.full_clean()
  File "C:\Users\vudgh\anaconda3\lib\site-packages\django\forms\forms.py", line 374, in full_clean
    self._clean_fields()
  File "C:\Users\vudgh\anaconda3\lib\site-packages\django\forms\forms.py", line 386, in _clean_fields
    value = field.widget.value_from_datadict(self.data, self.files, self.add_prefix(name))
  File "C:\Users\vudgh\anaconda3\lib\site-packages\django\forms\widgets.py", line 652, in value_from_datadict
    getter = data.get

Exception Type: AttributeError at /product/3
Exception Value: 'WSGIRequest' object has no attribute 'get'

标签: pythondjango

解决方案


您必须在“settings.py”中添加这一行

INSTALLED_APPS = ['...', '你的应用', ]

可能在你的 middelware.settings

MIDDLEWARE = ['...', '你的应用', ]


推荐阅读