【问题标题】:Django Aggregation in View视图中的 Django 聚合
【发布时间】:2016-10-26 04:28:17
【问题描述】:

我想在我的 html 视图中显示来自数据库的查询结果。 当我在 Django shell 中运行我的原始 sql 聚合查询时,我得到了我正在寻找的结果。但是当我将数据从视图传递到我的 html 时,它不会显示任何数据。

我的 views.py 和我也导入了模型

def officehome(request):
    """Renders the office home page."""
    assert isinstance(request, HttpRequest)
    ordersrecieved = FbsOrderT.objects.count()
    return render(
        request,
        'app/officehome.html',
        {"ordersrecieved": ordersrecieved}
    )

这是在 html 视图中

<ul class="list-group">
 <li class="list-group-item">
 <h5 class="list-group-item-heading">Orders Received <span {ordersrecieved}></span></h5>
  </li>

角度路由是否会成为问题并且不知道何时执行查询。

【问题讨论】:

  • 您的 span 标签缺少 &gt; 并且 django 模板变量用双花括号括起来,而不是单个。你想要&lt;span&gt;{{ ordersreceived }}&lt;/span&gt;。如果这不能解决问题,您可能需要编辑问题,因为目前尚不清楚您的问题是什么。
  • @Kevin 我添加了&gt;,但它仍然没有任何区别。问题是查询的视图中没有显示数据。
  • 你使用了双括号?没有它们,传递到 HTML 模板的参数将无法运行...

标签: html sql django


【解决方案1】:

这是错误的:

<h5 class="list-group-item-heading">Orders Received <span {ordersrecieved}></span></h5>

你想要的是:

<h5 class="list-group-item-heading">Orders Received <span> {{ ordersrecieved }}</span></h5>

模板的工作方式是将 {things which are in here 转换为 python 变量 context} 所以如果它在 html 的文本中,如果它是 span 的属性(如&lt;span {gergerg}&gt;)那么它将起作用这可能会呈现,但对用户来说是不可见的。除非您指定了自定义模板解析器,否则请使用 {{ }} 而不是 {

【讨论】:

  • 解决了一切。谢谢
猜你喜欢
  • 2020-08-08
  • 2018-02-19
  • 2015-06-24
  • 1970-01-01
  • 2010-12-20
  • 2019-01-24
  • 2020-03-18
  • 1970-01-01
  • 2014-07-15
相关资源
最近更新 更多