0

我正在编写一个从 HTML 页面获取某些字段值的 Python CGI,我现在需要转换这些输入值以使它们与数据库的表值匹配并从中获取数据。

例如,如果我的 UI 的字段值为“critic”,则应将其转换为“8_critic”以匹配数据库表值。

请问我该怎么做?像这样的东西可能吗?

 #!C:\Python27\python.exe -u
import cgi
import json
import cgitb
print "Content-type: application/json\n\n"

fs = cgi.FieldStorage()
def transform(fs):
 for key in fs.keys():
  if key == 'critic' :
    #key = '8_critic'
  elif key == 'somthing_else' :
    #key = 'another_thing' 

任何帮助,将不胜感激。

4

1 回答 1

0

对我来说最好的方法是拥有一个翻译表:

tr = { 'critic' : '8_critic', 'foo' : 'bar' }

并通过理解制作一个新词典:

nfs = { tr[k]:fs[k] for k in fs }

在这里,我假设您此时并不关心 FieldStorage。如果不是这样,您仍然可以执行以下操作:

nfs = cgi.FieldStorage()
for k in fs:
  nfs[ tr[k] ] = fs[k]
于 2013-05-27T15:00:40.320 回答