加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

python – Django,在另一个视图中显示视图?

发布时间:2020-12-17 00:51:37 所属栏目:Python 来源:网络整理
导读:我想知道我是否可以使用django在另一个视图中显示视图. 这就是我试图做的事情: def displayRow(request,row_id): row = Event.objects.get(pk=row_id) return render_to_response('row.html',{'row': row})def listEventsSummary(request): listEventsSumma

我想知道我是否可以使用django在另一个视图中显示视图.

这就是我试图做的事情:

def displayRow(request,row_id):
    row = Event.objects.get(pk=row_id)
    return render_to_response('row.html',{'row': row})

def listEventsSummary(request):
    listEventsSummary = Event.objects.all().order_by('-id')[:20]
    response = ''
    for event in listEventsSummary:
        response += str(displayRow('',event.id))
    return HttpResponse(response)

输出看起来像我期待的但我不得不用空字符串替换请求值.那很好还是有更好的方法吗?

最佳答案
http响应包含标题以及html或其他任何内容,因此您不能像字符串一样添加它们.

如果你想模块化你的视图函数,然后让子过程调用返回字符串然后你可以按你提出的方式做

可能在你的情况下,最好将一个显示行的循环放入模板中,然后在主视图中不需要子视图和循环.

def listEventsSummary(request):
    listEventsSummary = Event.objects.all().order_by('-id')[:20]
    return render_to_response('stuff.html',{'events':listEventsSummary})

并在stuff.html

{% for event in events %}
    

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读