0
我在碼頭集裝箱中使用Django。我有一個頁面有兩個按鈕:'運行'和'停止'。當有人按下'運行'時,它應該開始優化過程,當你按'停止'時,它應該停止。碼頭+ Django:循環+使用表格打破
views.py
def runGA(request):
#read from database and initate form
rundata = RunModel.objects.get(SID=sid)
runform = RunForm(request.POST or None, instance = rundata)
form = runform.save(commit=False) # initiating the form, to allow writing form.stop to db.stop
if request.method=="POST":
if request.POST.get("GA")=="Stop":
form.stop = True
if request.POST.get("GA")=="Run":
for iteration in range(cycles):
*optimise something with iteration*
rundata = RunModel.objects.get(SID=sid)
if rundata.stop == True:
break
form.stop = False
form.save()
return render(request,"runGA.html",{})
這工作時,我不使用泊塢窗容器,但只是本地運行。這種結構允許中斷一個循環,但它也允許在運行時顯示更新數字,或者在運行時檢查其他頁面上的設置等等。(所以我需要一個能解決所有這些問題的解決方案)
但是,如果我在docker容器中運行這段代碼,看起來好像request.POST有問題。它在循環完成後執行所有請求,而在期間不執行,因爲它應該是。而這個只有發生,當我在碼頭集裝箱運行這個。
任何想法怎麼來的?
謝謝!
泊塢版本:
Client:
Version: 1.11.1
API version: 1.23
Go version: go1.6.2
Git commit: 5604cbe
Built: Wed Apr 27 15:27:26 UTC 2016
OS/Arch: darwin/amd64
Server:
Version: 1.12.0
API version: 1.24
Go version: go1.6.3
Git commit: 8eab29e
Built: Thu Jul 28 23:54:00 2016
OS/Arch: linux/amd64
泊塢文件可能並不重要,但此處是:https://github.com/neuropower/neuropower-web/blob/development/neuropower/Dockerfile。