2014-02-26 46 views
0

當使用textarea的,很容易把一個固定的開始字符串轉換成HTML格式,例如:使用Python和Bottle編輯字典中的文本數據 - 如何將原始字典數據放入textarea?

<form action="/whatever" method="POST"> 
<textarea cols="60" rows="10" name="whatever" maxlength="2500">dddddd</textarea> 
</form>''' 

和用戶看到的數據DDDDDD的形式和可以對它進行編輯。

但是,我怎樣才能把變量數據放入表單中 - 原來是在字典中的數據,以便用戶可以從那開始並進行更改?如果在Python中我有一個變量y ='xxx'並將y放入表單中,則用戶將看到變量名稱y而不是其包含的文本。

當然,我可以打印數據並讓用戶在編輯之前將其剪切並粘貼到表單中,但必須有一些比這更好的東西。我寧願不需要Javascript,也不需要HTML5。

+2

您是使用模板生成HTML嗎?如果是這樣,你應該可以使用該模板將「y」的值放在任何其他模板值中。 – BrenBarn

回答

1

你需要把周圍的可變花括號:

<form action="/whatever" method="POST"> 
<textarea cols="60" rows="10" name="whatever" maxlength="2500">{{y}}</textarea> 
</form> 

查覈在Bottle's SimpleTemplate Engine documentation基本API使用。

+0

謝謝!我認爲會有一些簡單的事情。 – user3354588

+0

@ user3354588太棒了,很高興我能幫到你。如果此答案解決了您的問題,請將此標記爲正確答案,以便您的問題將被關閉。 – tsroten

0
# To help beginners, here is a minimal Python with Bottle script that runs. 
# Python 3 with Bottle: How to display an HTML form pre-populated with variable data. 

import bottle 
from bottle import template, run 
from bottle import get, post 

@get('/') 
def yourtest(): 
    x = "xxx" 
    return template (ADMIN_FORM, y = x) 

ADMIN_FORM = ''' 
    <form action="whatever" method="POST"> 
    <textarea cols="60" rows="10" name="whatever" maxlength="2500">{{y}}</textarea> 
    </form>''' 

run(host='localhost', port=8080) # Comment out for remote server. 
# And run the remote server here