【问题标题】:Django: Is there a way to make client render Python 3 functions locally?Django:有没有办法让客户端在本地渲染 Python 3 函数?
【发布时间】:2019-12-21 12:21:06
【问题描述】:

我有一个项目,我希望客户在他/她的机器上运行 for/while 循环。有没有办法做这样的事情,因为视图是在服务器端运行的,如下所示:

views.py

from django.shortcuts import render

def index(request):
    for i in range(0,10000):
        # Do stuff
return render(request, 'app/index.html')

Javascript 是客户端的选项之一,但我有一些我想运行的 Python 3 库。

更新: 我正在 Heroku 上构建一个 Django 应用程序,它将为区块链实现工作量证明功能。工作量证明功能的概念需要客户端进行计算。我想要完成的是为客户提供一个模板,以使用 Crypto 库(来自 Crypto.Hash 导入 SHA)在 Python 中运行他们的资源。这是我尝试关注的示例存储库blockchain-python-tutorial。存储库在 Flask 中本地运行,并不意味着在实际服务器上运行,因为存储库是理论上的而不是实用的。所以我想知道是否有办法在 Heroku 上使用 Django 构建应用程序的副本。谢谢。

【问题讨论】:

  • 如果您尝试解释实际用例,我们可以建议解决方法。

标签: python django view render client-side


【解决方案1】:

Django 不支持模板中的范围 for 循环。除此之外,您尝试的内容违反了 MVC 设计规则。您正在寻找的解决方案将难以实施,因为您违背了 Django 的设计工作方式。

如果您需要更多 python 功能,您应该了解custom Django template tags。如果您需要帮助的特定用例,请在您的帖子中详细说明。

【讨论】:

  • 感谢您指出 MVC 规则。我已经阅读了您在帖子中链接的文档,并且我同意我的设计是不可能的。我还发现了一个有用的 link 解释 Django 堆栈。
猜你喜欢
  • 2023-02-22
  • 1970-01-01
  • 2016-02-05
  • 2020-04-26
  • 1970-01-01
  • 1970-01-01
  • 2021-02-07
  • 2016-08-01
  • 2017-07-13
相关资源
最近更新 更多