在一个项目中,我将用户定义的Javascript函数存储在Django数据库中,并使用Js2Py运行它们。
类似这样的东西:
class MyModel(models.Model):
function = models.TextField()
def run_function(self, value):
try:
# Compiling
compiled_function = js2py.eval_js(self.function)
# Running with value
compiled_function(value)
except:
pass
我注意到,如果将function(value) { console.log("hello"); }
存储在函数字段中,并调用run_function()
,则会在本地服务器的控制台中打印出单词hello
。所以我想知道一些事情:
我确实必须构建一个系统,其中用户将简单的自定义函数存储在数据库中,并且我的系统需要运行它们。这个问题可能有什么解决方案?