2011-03-25 73 views
6

我使用這條線通過一個urlmain_iduser_tag_list到處理程序:如何將URL作爲URL參數傳遞時存在問號?

self.response.out.write(""" 

<a href="/tc?url=%s&main_id=%s&user_tag_list=%s" title="edit tag set">edit tag set</a> 

""" % 
(item.url, main_id, item.tag_list)) 

時,已經是在通過url(第一個參數)一個問號這個工程只是罰款,我可以不再讓main_id

main_id = self.request.get("main_id") 
目標處理器

,而不是我的錯誤

m = Main.get_by_id(int(main_id)) 
ValueError: invalid literal for int() with base 10: '' 

有沒有辦法解決這個問題?

回答

9

你只是想用urllib.quote

>>> import urllib 
>>> urllib.quote('http://www.google.com?q=Zombie+Apocalypse') 
'http%3A//www.google.com%3Fq%3DZombie%2BApocalypse' 

所以:

urllib.quote(item.url) 
1

urllib.quote應該幫助與此有關。