无法在Django中运行os.system命令?
我们有一个在Windows机器上运行的Django应用,它是通过Apache服务器(mod_python)来工作的。这个应用需要调用一些R语言的脚本。最简单的方法是通过os.system来调用R,但当Django执行到os.system这个命令时,它就卡住了。我也试过用subprocess,结果也是一样。
我们还有一个可能相关的问题,就是Django只能访问它所在机器的文件系统,所有的网络驱动器对它来说都是看不见的,这让人非常沮丧。
如果有人能给出这两个问题的解决办法(我猜这两个问题可能是同样的限制造成的),那就太感谢了。
1 个回答
1
与其使用 os.system
,你有没有考虑过 RPy2 呢?我在一个和你描述的Django类似的情况下用过它,效果很好。
rpy2的高级接口是为了让Python程序员更方便地使用R语言而设计的。R语言中的对象会以Python实现的类的实例形式出现,而R语言的函数在很多情况下会作为这些对象的绑定方法。