从href获取数据但它不可用

时间:2016-04-08 20:13:02

标签: python html unicode encode webapp2

最近我开始研究一个项目。我使用<a>标签从html页面发送数据。在后端我使用python webapp2 feamework。当我得到它完美显示的数据时。但是当我将它与某些字符串进行比较以供进一步使用时,它不起作用。

我知道当我们获取数据时它是unicode。但是我将它转换为utf-8并且它仍然无效。

这是html中的代码。假设我发送了"item 2" as itemname

<a href="/main/items/?itemname= {{res.itemName}}&itemdescription={{res.itemDescription}}"> Click me </a>

我用来获取数据的代码是

def get(self,nam,des):

   nam = self.request.get('itemname')
   itemDesc= self.request.get('itemdescription')
   name = nam.encode('utf-8')

   if name == "item 2":
       self.response.write("Equal")

我也在没有编码的情况下尝试它,但它仍然不起作用。它完美地显示了项目名称的值。但它不是在比较它们。请帮助我犯错的地方。

1 个答案:

答案 0 :(得分:1)

看起来有两个问题,在设置预期值之前有一个空格,字符串是urlquoted。

修复空间:

<a href="/main/items/?itemname={{res.itemName}}&itemdescription={{res.itemDescription}}"> Click me </a>

然后使用编码,添加import urllib并更改行

name = nam.encode('utf-8')

name = urllib.unquote(nam.encode('utf-8'))