【问题标题】:Pass a pandas dataframe to Django template将 pandas 数据框传递给 Django 模板
【发布时间】:2015-10-27 09:26:48
【问题描述】:

我正在使用 Django、bootstrap3 和 Dajaxice 创建一个网站。我想将一个 pandas 数据框从我的 views.py 传递到我的一个模板,但无法让它工作。我需要它作为数据框而不是 html,因此不能使用 .to_html()

html

<div class="text-center">
    <button class="btn btn-primary" type="button" name="UpdateDB" onclick="submitverify({{file_dfs}})">Submit Files {% bootstrap_icon "chevron-right" %}</button> 
</div>

当我尝试传递file_dfs 时,我在{{file_dfs}} 上收到Uncaught SyntaxError: Unexpected token ILLEGAL 错误。当我打开 chromes 开发者工具时,它看起来像这样:

<button class="btn btn-primary" type="button" name="UpdateDB" onclick="submitverify({&#39;_COMM_&#39;: [], &#39;_CMD_&#39;: [         WINDOW_START ...]})"

谁能帮我解决这个问题?

谢谢!

【问题讨论】:

  • 你能提供更多关于你想要做什么的信息吗?您是否尝试将数据框传递给数据的其他用户?
  • @KevinMcKenzie 是的,我需要通过我的 html 模板调用的另一个函数中的数据框。
  • 函数是python函数还是django函数?我不确定 django 解析器是否知道如何处理数据帧。你可以看看github.com/chrisdev/django-pandas
  • @KevinMcKenzie 该函数是一个包含 dajax 调用的 javascript 函数。 dajax 是使用数据框的,但 javascript 调用发生在我的 html 模板中,这就是为什么我需要能够将数据框从我的 views.py 传递到我的模板中。我知道不是 dajax 导致了问题,因为即使 dajax 被注释掉,我也会遇到同样的错误。看起来模板在看到数据名时会感到困惑。
  • 自动转义是否开启?看来 Django 默认情况下已将其打开。 (见code.djangoproject.com/wiki/AutoEscaping)。如果它打开了,我怀疑你需要为数据框关闭它。

标签: python html django pandas


【解决方案1】:

是否开启了自动转义?似乎 Django 默认开启了它(参见code.djangoproject.com/wiki/AutoEscaping)。如果开启,则需要为数据框关闭。

【讨论】:

    猜你喜欢
    • 2017-12-31
    • 2012-10-09
    • 2016-04-22
    • 1970-01-01
    • 2010-12-26
    • 2018-12-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多