Как вызвать функцию Python из скрипта Jquery в шаблоне Django - PullRequest
0 голосов
/ 30 сентября 2011

я новичок в django и jquery, я searching for a 'hello world' sample for jquery использую django1.3, где hello world возвращается в виде строки / json с сервера на клиент, когда пользователь нажимает кнопку или при загрузке страницы.

Примечание: я использую django1.3 и python 2.7.Извините, это очень простой вопрос.

Я успешно выполнил `показывает строку" Это Hello World by JQuery "без какого-либо представленияфункции (используя только jquery). Но я не знаю, как использовать функции представления из функций jquery. Если у кого-то есть идеи, пожалуйста, помогите мне. Спасибо за шаблоны advance.om. Я попытался использовать следующие фрагменты кода.

urls.py

(r'^hellofromserver/$',views.test),



def test(request):
    if request.method == 'GET':
        json = simplejson.dumps('hello world!')
        return HttpResponse(json, mimetype = 'application/json')

jqueyhelloserver.html:

<html>
<head>
<title>jQuery Hello World</title> 
<script type="text/javascript" src="{{STATIC_URL}}js/jquery-1.2.6.min.js"></script> 
</head> 
<body>
 .....

<script type="text/javascript">


 # how can I get'hello world' from test function(What is the sytax  )

    </script>     
<div id="msgid">
</div> 
</body>
</html>

Как вызвать функции 'test' и 'hellofromserver' из jquery? (Из шаблонов).

Ответы [ 2 ]

0 голосов
/ 06 октября 2011

Наконец я получил «привет» с сервера!

urls.py:
from django.views.generic.simple import direct_to_template

(r'^hello/$',direct_to_template, {'template': 'jqueryserver.html'}),
(r'^jqueryserver/$',views.jqueryserver),

views.py:

#other imports
from django.views.decorators.csrf import csrf_exempt
from django.core.context_processors import csrf
from django.views.decorators.csrf import csrf_protect

def jqueryserver(request):
    print "in jqueryserver"
    response_string="hello"
    if request.method == 'GET':
        if request.is_ajax()== True:
            return HttpResponse(response_string,mimetype='text/plain')

jqueryserver.html

<html>
<head>
    <title>jQuery Hello World</title> 
    <script type="text/javascript" src="{{STATIC_URL}}js/jquery.js"></script>
<script>


$.ajax({
    type: "GET",
    url: "/jqueryserver/",
   success: function(data){
         alert(data);         
     }
});

</script>   
</head> 
<body>
<form method ="GET" >
<input type= "submit" id = "save" value ="Save" />
</form>
<div id= "test"></div>
</body>
</html>
0 голосов
/ 30 сентября 2011

... А в чем проблема? Любая информация из вашей консоли Javascript? Возможно, вы не настроили ваше приложение django для использования CSRF-защиты .

...