1

HTML でインポート:

<script src="/media/js/jquery-2.0.2.js"></script>
<script src="jquery.dajax.core.js"></script>

<script type="text/javascript">
function oneri()
{
    Dajaxice.rezervationApp.oneri(Dajax.process)
}
</script>

私が使う:

 <div class="span6"> <a href="#adviceModal" class="btn" role="button" onClick="oneri()" data-toggle="modal">Öneri Al</a></div>

ajax.pyで

from django.template.loader import render_to_string
from dajaxice.decorators import dajaxice_register
from django.shortcuts import render
from rezervationApp.models import RoomType, Room, Market, Profile, Reservation


@dajaxice_register
def oneri(request, word):
    dajax = Dajax()
    p = Profile.objects.get(firstname__contains=word)
    dajax.assign('#advice','innerHTML', p)
    return dajax.json()

完全にエラー:

ImportError at /
No module named 'Dajaxice'
Request Method: GET
Request URL:    http://127.0.0.1:8000/
Django Version: 1.5.1
Exception Type: ImportError
Exception Value:    
No module named 'Dajaxice'
Exception Location: C:\Python33\lib\site-packages\dajaxice\core\__init__.py in <module>, line 3

しかし、常に同じエラー。他のファイルを dajax チュートリアルとして構成しました。何か考えはありますか?

4

3 に答える 3

4

問題は、py2 と py3 の違いにあります。Py3 では、明示的な相対インポートのみが許可されます。ドットを追加すると機能します。

from .Dajaxice import Dajaxice, dajaxice_autodiscover
于 2013-09-01T13:46:25.623 に答える
-1

それが生成された HTML である場合、問題はそこにあります。ドキュメントの Dajaxice セットアップ チュートリアルに従った場合は、おそらく{% load dajaxice_templatetags %} {% dajaxice_js_import %}テンプレートの head で使用したことでしょう。これは、静的フォルダーがある場所に静的 dajaxice.core.js ファイルを生成<script charset="utf-8" type="text/javascript" src="/static/dajaxice/dajaxice.core.js">し、生成された HTML のようなものを表示することになっています。

Dasjax と Dajaxice の両方のインストール手順を正確に実行した場合は、settings.py で静的ルート フォルダーの場所として STATIC_ROOT 設定を定義し (settings.py ファイルに相対的)、python manage.py collectstaticこれを実行すると 200 が得られ、最終的にはDajaxice JavaScript ファイルに対する 304 応答と、アプリは問題なく動作するはずです。

于 2014-07-24T19:02:33.407 に答える