将python的脚本对象传递给Django的views.py

时间:2017-09-01 16:09:56

标签: python django python-2.7 highcharts

我正在尝试学习如何将我的Highchart从python脚本转移到Django。我一直在使用this solution thread去那里(但到目前为止徒劳无功)。

我有一个名为 script.py 的python脚本,它返回一个名为 chart_data 的对象。现在在Django中,我想在 views.py 中使用一个函数来执行该script.py文件,获取 chart_data 对象并将其分配给一个名为'的新对象数据”。

我的script.py文件存储在项目根目录中名为/ scripts /的目录中,它包含自己的 __ init __。py 文件。

使用下面的代码,服务器返回一个错误,指出:全局名称'chart_data'未定义

对于我在这里做错的任何解释都将不胜感激。

SETTING_ROOT

2 个答案:

答案 0 :(得分:1)

是的,chart_data未在此代码中的任何位置定义。

您似乎将脚本作为外部进程运行,然后期望Django以某种方式知道它定义的变量。这根本不是它的工作原理。

您应该像使用其他Python模块一样导入,而不是通过Popen调用脚本。然后你可以调用它的任何函数并将它们的返回值分配给你喜欢的任何函数。

答案 1 :(得分:0)

将您的脚本放在您正在使用的Django应用程序中,然后导入它:

from my_app.chart_data import chart_data