【问题标题】:AttributeError - module 'django.http.request' has no attribute 'META'AttributeError - 模块 'django.http.request' 没有属性 'META'
【发布时间】:2017-01-20 18:29:59
【问题描述】:

我得到了这个错误,但我做了完全相同的事情:

属性错误在 /courses/ 模块 'django.http.request' 没有属性 'META'

错误发生在:

from django.shortcuts import render
from django.http import request
from django.http import HttpResponse
from .models import Course

# Create your views here.
def course_list(response):
    courses = Course.objects.all()
    return render(request, 'courses/course_list.html',{'courses':courses})

#    output=', '.join([str(course) for course in courses])
#    return HttpResponse(output)

但是服务器显示没有任何问题。

Performing system checks...

System check identified no issues (0 silenced).
September 13, 2016 - 13:51:18
Django version 1.10.1, using settings 'learning_site.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CTRL-BREAK.

【问题讨论】:

    标签: python django


    【解决方案1】:

    您的函数参数称为response,但随后您使用request 这是您导入的模块,将字段参数更改为request 或将其在函数内的用法更改为response

    def course_list(request):
        courses = Course.objects.all()
        return render(request, 'courses/course_list.html',{'courses':courses})
    
    def course_list(response):
        courses = Course.objects.all()
        return render(response, 'courses/course_list.html',{'courses':courses})
    

    【讨论】:

    • (另外,您完全有可能根本不需要导入request
    • 是的,我意识到了这一点。我没有完成课程。但我冲动地完成了。工作正常不!再次感谢!
    • @DevBingo - 别担心,尽情享受吧!
    猜你喜欢
    • 1970-01-01
    • 2021-09-13
    • 1970-01-01
    • 2021-11-27
    • 2015-02-12
    • 2018-04-14
    • 2019-02-18
    • 1970-01-01
    • 2020-01-01
    相关资源
    最近更新 更多