2015-04-03 23 views
1

我正在用Python,Javascript(JQuery)和AJAX創建一個網站。我知道用Ajax執行一個Python腳本,但我不知道用Python將數據返回給Javascript。在Python中返回數據與Python

例如,如果表單中有錯誤,我想發送警報(「郵件不正確」)。我知道使用PHP,我可以使用echo「something」,但我不知道如何使用Python。

def secure_mail(mail): 
    if mail == "": 
     error = "the mail is empty" 
     print error 

謝謝你的幫忙!

+1

你使用什麼樣的框架? – Daniel 2015-04-03 12:07:45

+0

與python相比,PHP更「纏繞」web。在python中,你有一個web應用程序可以在http請求上進行回答。如果你想用AJAX返回一個錯誤,你只需要在你的AJAX響應中返回一些你的客戶端(javascript)會檢測到的錯誤。用於顯示任何你需要處理的clientwise(javascript)。 – syntonym 2015-04-03 12:10:13

+0

我不使用任何框架。但也許我應該使用框架。事實上,我正在學習Python,並且我想自己創建我的項目。 – Luc 2015-04-03 12:11:17

回答

1

在您的ajax方法中定義的ajax成功消息或錯誤函數中,您希望接收返回的JSON數據,這些數據將包含由您的Python後端確定的特定錯誤。

所以在你的python後端創建一個字典。

import json 
returnValue = {'error': 'you messed up something'} 

## serialize to json string 
return json.dumps(returnValue) 

比你的Ajax方法data.error就等於「你搞砸了的東西」

根據你選擇的Web框架(Django的,瓶)的處理請求並返回一個字典作爲概念一個json字符串將是類似的。

+1

我必須先學習Flask或Django才能繼續。非常感謝你的幫助 – Luc 2015-04-03 12:23:39

+0

沒問題,我推薦Django,燒瓶很棒,但是Django有很多文檔和非常大的社區。此外,它可以處理大型項目,而不必像大量Flask這樣的微型框架安裝大量額外的東西。 – 2015-04-03 12:26:49