次の単純なAJAX呼び出しを使用しています。Django/Ajaxターゲットビューの代わりに発射ページからhtmlを返す "データ"を取得
次の要素からターゲットをつかむことになっている$.ajax({
url: $('#currentNodes').attr('target'),
type: 'get',
dataType: "html",
success: function(data) {
console.log(data);
},
failure: function(data) {
alert('error');
}
});
:
<p><a href="{% url "current_nodes" view.slug %}" id="currentNodes">Test</a></p>
私は上記の要素をクリックすると、私のブラウザは、私は私のviews.pyに設定したHTMLを表示します。私urls.pyで定義されたURLに
def current_nodes(request, slug):
html = "<html><body>Smoke Test for {}</body></html>".format(slug)
return HttpResponse(html)
url(r'^(?P<slug>[a-zA-Z0-9-]+)/current_nodes/$', current_nodes, name="current_nodes"),
しかし、console.log
によれば、このリンクからのAjax呼び出しは、ターゲットで要求しているページではなく、現在のページを提供しているビューからの応答を受け取ります。確かに、私はそれを使って何かをしようとすると、私が処理しようとしているhtmlをプラグインするのではなく、テンプレートの完全なhtmlを表示します。
私には何が欠けていますか?
これは、ありがとうございます –