0

現在、 http: //www.dajaxproject.com/pagination/でDajaxの例を調べていますが、乱数の例と単純なフォームの例を実行すると、次のことがわかります。

[2012年7月20日15:06:37]"POST/dajaxice/couch.randomize/ HTTP / 1.1" 200 61

[2012年7月20日15:06:38]"POST/dajaxice/couch.updatecombo/ HTTP / 1.1" 200438

これらの情報は、対応するajaxタスクが実行されていることを示しています。現在、ページネーションの例を実行しようとしていますが、ajaxをトリガーする方法がわかりません。onclickまたはonchangeイベントはなく、ページを提供するときに直接読み込まれるはずです。

ボタン(onclickイベント)を使用してページネーションを呼び出すと、機能しました。

ここで何が欠けていますか?ありがとう。

4

2 に答える 2

0

ajax タスクは、onclick ボタン、onchange オプション、または js を使用して呼び出す必要があります。

この dajax ページネーションの例では、最初に Django の Paginator を使用して HTML テンプレートにデータを入力する必要があります。これが完了すると、「前へ」または「次へ」ボタンをクリックするオプションが表示されます。 dajax タスク。

最初にデータが空の場合、「前へ」および「次へ」ボタンはまったく表示されません。

于 2012-07-25T07:05:07.237 に答える
0

例のコードをそのまま使用していますか、それともコードを追加しましたか? お持ちの場合は、コードを投稿すると役立つ場合があります。必要な JavaScript フレームワーク (jQuery、mootools など) の 1 つ (Dajax 要件) が整っていると思います。

ajax.py に Dajax をインポートしましたか? 例にはありませんが、必要だと思います:

from dajax.core import Dajax

例では Dajax() を使用しているため

dajaxice と dajax のインストール済みアプリ settings.py 要件もいくつかあります - ドキュメントhttps://github.com/jorgebastida/django-dajaxice/wiki/installationで説明されています

Dajax のログを有効にすることもできます。例としてDajax のインストールを参照してください。まだ行っていない場合は、debug=True でしばらく実行してください。


アップデート:

@Nicholas TJ - 代替通話によるセットアップと成功についてのコメントが記載されています。ここで、テンプレートから Dajax プロセスを呼び出す方法に関して、ページネーションの例に問題があるという別の質問に気付きました。

Django テンプレートから Dajax / Dajaxice 関数を呼び出す方法

JS関数でDajaxを呼び出してきたので、テンプレートの呼び出し方法は未踏の領域です。onclick 呼び出しでも同様の成功を収めたようです。非推奨のテンプレート呼び出し手順の可能性を調べていません - 古い例かもしれません。

また、「pagination_page.html」の例の見出しが「paginator_page」と書かれていることにも気付きました。見出しをテンプレート名として使用すると、明らかな問題が発生します。できたら、例を試してみます。

わかりました-不条理のリスクがあります-新しい更新。バニラの例が機能しなかった後、わずかに変更された例が機能するようになりました。

それが必要です

from dajax.core import Dajax

この例にはありませんでした。また、ベース ビューに RequestContext を使用するまで機能しませんでした。

def pagination_example(request):
items = get_pagination_page(1)
return render_to_response('paginator_example.html',{'items':items},context_instance=RequestContext(request))

その後、期待どおりに機能しました。

于 2012-07-23T02:44:20.573 に答える