2016-01-28 39 views
-1

我已經成爲在這中間有點糊塗了,希望你能幫助我,如何設置一個變量,按下一個html文件按鈕,將燒瓶服務器路線

我也有類似的文本文件下面的一個:

./Video/SetUp 
./Video/NewRecordings 
./Video/NewRecordings/20160113_151920 
./Video/Back Up 
./Video/Back Up/FirstLecDraft 
./Video/Back Up/FirstTalk 

我用下面(感謝Dominate)的python腳本使用上述List文本文件來填充一個HTML文件:

import dominate 
from dominate.tags import * 

doc = dominate.document(title='Dominate your HTML') 

with doc.head: 
    link(rel='stylesheet', href='style.css') 
    script(type='text/javascript', src='script.js') 

with doc: 
    with div(): 
     with open('List') as f: 
      for line in f: 
       li(input(line.title(), type='submit', value='%s' % line,  onclick='self.location.href=\'http://127.0.0.1:5000/{This must be the same as "value" part}\'')) 

    with div(): 
     attr(cls='body') 

print doc 

第一個問題:如何將value字段的值傳遞給onclick的其餘路徑?

的結果必須是這樣的:

<input href="" onclick="self.location.href='http://127.0.0.1:5000/cameradump/2016-01-21" type="submit" value="./cameradump/2016-01-21"> 

分別另一個值的另一個按鈕。

如您所見,:5000/之後的其餘onclick路徑必須與value字段完全相同。

第二個問題:如何將此路徑傳遞給燒瓶上的路徑main.py文件? (例如,當用戶按下每個按鈕時,按鈕的值必須被動態地設置到的路由)

main.py是這樣現在:

from flask import Flask, render_template 
import subprocess 
app = Flask(__name__) 

@app.route("/{value must be passed here}") 
def index(): 
    return render_template('index.html') 
... 

但它應該是像下面,如果用戶按下按鈕/cameradump/2016-01-21

... 
@app.route("/cameradump/2016-01-21") 
def index(): 
return render_template('index.html') 
... 

或根據按下按鈕的其他值。

回答

1

第一:

做同樣的方式與你做value - 使用%

onclick='self.location.href="http://127.0.0.1:5000/%s"' % date 

如果你不能有"2016-01-21"文件"List"但你必須"/cameradump/2016-01-21"那麼你可以把它分解(使用"/")並獲取最後一個元素 - 日期。

# `line` is `"/cameradump/2016-01-21"` 

data = line.split('/')[-1] 

二:

讀取DOC約routing

您可以使用路徑變量來獲取日期

@app.route("/cameradump/<date>") 
def index(date): 
    print("Date:", date) 
    return render_template('index.html') 
相關問題