2013-07-15 3 views
0

импорт в HTML:Нет модуль с именем '' Dajaxice

<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. У вас есть идеи?

ответ

1

Если я правильно помню учебник Dajaxice покидает ту часть, где вы на самом деле должны установить Dajaxice ...

Если вы еще не вы должны попробовать pip install django-dajaxice

3

проблема в разнице между PY2 и py3. Py3 позволяет использовать только только относительный импорт. Он работает, когда вы добавляете точку.

from .Dajaxice import Dajaxice, dajaxice_autodiscover 
+0

Мое приложение размещено на heroku, есть ли способ изменить __init__.py? Или есть ли другой способ обхода? –

-1

Если это ваш сгенерированный HTML-код, тогда возникает проблема. Если вы следовали настройке Dajaxice в своей документации, вы, вероятно, использовали {% load dajaxice_templatetags %} {% dajaxice_js_import %} в начале ваших шаблонов. Предполагается генерировать статический файл dajaxice.core.js, где находится ваша статическая папка, и показывать вам что-то вроде <script charset="utf-8" type="text/javascript" src="/static/dajaxice/dajaxice.core.js"> в вашем сгенерированном HTML.

Если вы выполнили шаги по установке как для Dasjax, так и для Dajaxice, то точно укажите параметр STATIC_ROOT в ваших settings.py как место расположения вашей статической корневой папки (относительно файла settings.py), а затем запустите python manage.py collectstatic, это должно дать вам 200 и в конечном итоге 304 ответа на файл javascript Dajaxice, и ваше приложение должно работать нормально.

 Смежные вопросы

  • Нет связанных вопросов^_^