楽しみながら、JQuery と Django の両方を同時に学ぼうとしています。ブラウザベースの端末アプリケーションを書くのは気の利いたことだと思いました。
背景は次のとおりです。
- 私のアプリケーションは、ここで jsonrpc django-json-rpc を使用します:
https://github.com/samuraisam/django-json-rpcそして、ここで Jquery ターミナル プラグイン: http://terminal.jcubic.pl/
私のコンソールページは次のようになります。
{% load staticfiles %}
<!DOCTYPE HTML>
<html>
<head>
<script src="http://code.jquery.com/jquery-1.7.2.min.js"></script>
<script src="{% static "goat/jquery.terminal-0.7.10.min.js" %}"></script>
<link rel="stylesheet" type="text/css" href="{% static "goat/jquery.terminal.css" %}">
</head>
<body>
<div id="term"></div>
<script>
jQuery(function($) {
$('#term').terminal("http://goatgruff.com/json/", {
greetings: "Menu: (R)egister (L)ogin"});
});
</script>
</body>
</html>
私のjson views.pyは、json-rpcと同じ例を使用しています...
from jsonrpc import jsonrpc_method
@jsonrpc_method('sayHello')
def whats_the_time(request, name='Lester'):
return "Hello %s" % name
@jsonrpc_method('gimmeThat', authenticated=True)
def something_special(request, secret_data):
return {'sauce': ['authenticated', 'sauce']}
涼しい。だから質問:
端末に「sayHello Matt」と入力すると、Ajax 呼び出しが機能し、「Hello Matt」と応答します。ただダッキー。しかし、views.py にないメソッドを入力すると、醜い AJAX エラーが発生します。
このエラーを適切に処理し、メソッドがないことをユーザーに伝えたいと思います。ビューでメソッドに名前を付ける必要があるため、そこにエラー ハンドラーを配置することはできません。urls.py に try / catch を入れる必要があるのか、それとも戻ってきたものを解析して JQuery でエラーを処理する必要があるのか 疑問に思います-そのオブジェクトがどのように見え、どのように結果が得られるかわかりません。
正しい方向へのいくつかの指針は、私が学ぶのに役立ちます.
ありがとう、
マット