【问题标题】:Django : How to return an object from a python module [closed]Django:如何从 python 模块返回对象 [关闭]
【发布时间】:2014-11-03 00:02:20
【问题描述】:

我正在尝试学习 Django,最近我接触到了 Python 中的 OOP。我无法理解以下在 Django Book 中的“视图”下解释的代码。

from django.http import HttpResponse

def hello(request):
          return HttpResponse("Hello world")

在上面的代码sn-p中,解释了函数hello将'request'作为强制输入arg,实际上是一个对象。 “该函数是一个简单的单行函数:它仅返回一个已用文本“Hello world”实例化的 HttpResponse 对象。”

我在这里试图理解上面的sn-p。

提前致谢

【问题讨论】:

  • 这个解释是正确的。究竟是什么,你不明白吗?这似乎是正常的过程编程,这里没有什么特别与 OOP 相关的内容。
  • 为什么看不到完整的代码。网页触发实际调用名为hello 的视图的 URL,并将响应发送到模板。它将帮助您更好地看待事物

标签: python django


【解决方案1】:

这正是 Django Book 中所写的内容。

hello 是一个函数,位于views.py 内,被视为视图函数。

在 Django 中,视图函数期望获得一个 request 参数,该参数表示一个 HttpRequest 对象,该对象包含有关从客户端发送到服务器的请求的信息。其中之一是 GET 参数(例如)。

这个视图只做了一件简单的事情,它返回一个类型为HttpResponse 的对象,该对象被返回给客户端。该对象是用将呈现给客户端的字符串“Hello World”实例化的。

所有视图函数都需要返回某种HttpResponse 对象——包括但不限于HttpResponseRedirectHttp404 等。 如果他们不这样做,Django 框架会采取相应的行动(例如,可以抛出异常,但不一定)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-11-20
    • 1970-01-01
    • 1970-01-01
    • 2020-02-17
    • 2014-10-15
    • 1970-01-01
    • 1970-01-01
    • 2020-01-08
    相关资源
    最近更新 更多