2017-02-20 41 views
1

我對python和Django非常陌生,我試圖找出在Django中執行某些操作的正確方法。我有一個Django應用程序的一半完成,但我不知道如何運行之間的子進程。在Django上的頁面加載之間運行服務器上的子進程

我有一個python腳本,它需要3個變量並將它們插入到在OpenSSL上運行單個命令的子進程中。這是這個python腳本的簡化版本:

issuer = "path/to/file" 
serial = "hex number goes here" 
URL = "http URL here" 

arequest = subprocess.check_output "openssl", "ocsp", "-nonce", "-noverify", "-issuer", issuer, "-serial", serial, "-url", URL]) 

print(arequest) 

這個腳本,我有工作。是我的目標做的是在Django的頁面加載之間subprocess.check_output運行,使得:

  1. 1接受現場輸入的變量和用戶點擊提交 。
  2. 將可變字段數據輸入到subprocess.check_output命令中,並在服務器上運行該命令以提供arequest
  3. Page 2在文本框中顯示arequest的結果。

我也不希望存儲在數據庫內的任何東西,除了這個問題範圍以外的信息。我知道爲了做到這一點,我需要使用GET或POST來獲取信息,但我不確定這個工作的最佳方法背後的'理論'。有人能幫助我朝正確的方向推進嗎?

+0

您不能在「頁面之間」擁有它,但腳本可以接受POST請求中的數據並將結果顯示在響應中。你究竟在哪裏卡住? –

+0

這是我困惑的地方。 1)我在我的views.py中有2個函數。我有「索引」,它定義了「index.html」頁面(提交按鈕所在的位置)的代碼和變量,而且我有「結果」,它定義了「results.html」頁面的代碼和變量。我在哪裏插入代碼來引用python腳本? 2)如何引用python腳本? 3)如何將數據從POST傳遞到python腳本,然後再返回? 我想我只是困惑這個代碼需要發生的地方,以便它在服務器上運行命令並返回我想要的數據。 – Eddi

回答

0

索引頁上的按鈕應將表單發佈到結果視圖。然後該視圖運行腳本並將結果傳遞給results.html模板。

+0

我只是做了一些搞亂,這裏是我在哪裏:我有三個領域的索引頁,我已經創建了基於這些領域的結果變量。根據POST數據,我有每個變量都顯示在'