首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >views.list_rooms()和views.list_rooms有什么不同?

views.list_rooms()和views.list_rooms有什么不同?
EN

Stack Overflow用户
提问于 2020-03-06 22:49:14
回答 2查看 34关注 0票数 1

我正在学习Django,我想知道空括号或def name后面的()是什么意思。

urls.py

代码语言:javascript
复制
from django.urls import path
from . import views

app_name = "app_name"

urlpatterns = [path("list", views.list_rooms())] #'list_rooms()' did not work
urlpatterns = [path("list", views.list_rooms)] #'list_rooms' did work

views.py

代码语言:javascript
复制
def list_rooms(request):
~~

当它是list_rooms()时,它引发了请求: TypeError TypeError: list_rooms()缺少一个必需的位置参数:'request‘

谢谢。

EN

回答 2

Stack Overflow用户

发布于 2020-03-06 22:51:10

通过执行list_rooms(),可以立即调用函数,但是通过使用list_rooms,可以将函数作为参数传入。

单独运行list_room将产生如下输出:<function list_rooms at 0x00000248EA961620>

票数 1
EN

Stack Overflow用户

发布于 2020-03-06 22:56:03

您可以将list_rooms()视为调用该视图(这是一个函数)的方式。

而这里使用list_room作为视图的名称,以便您引用它。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60566462

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档