R で書かれた大規模なプログラムと連携するサイトを django で構築しています。R プログラムを実行するボタンをサイトに配置したいと考えています。を使用して動作subprocess.call()
していますが、予想どおり、サーバーはsubprocess.call()
戻るまでビューのレンダリングを続行しません。このプログラムの実行には数時間かかる可能性があるため、これは実際にはオプションではありません。
R プログラムを実行し、Python コードを実行し続ける方法はありますか? 私は周りを検索して調べましたがsubprocess.Popen()
、それを機能させることができませんでした。
ビューで使用している一般的なコードは次のとおりです。
if 'button' in request.POST:
subprocess.call('R CMD BATCH /path/to/script.R', shell=True)
return HttpResponseRedirect('')
うまくいけば、単純なものを見落としただけです。
ありがとうございました。