2016-07-16 70 views
3

使用python 3.4,django 1.9.7,django_ajax 0.2.0; 并在Python 2.7中测试; 这里是我的代码:ImportError:无法导入名称'ajax'

from django_ajax.decorators import ajax 
from models import Product 
from cart.cart import Cart 

@ajax 
def ajax_add_to_cart(request): 
    if 'product_id' in request.GET and request.GET['product_id']: 

     product_id = request.GET['product_id'] 

     product = Product.objects.get(id=product_id) 
     cart = Cart(request) 
     cart.add(product, product.price, quantity=1) 
     items_in_cart = cart.itemCount() 

     return {'items_in_cart': items_in_cart} 

我得到这个错误:

from django_ajax.decorators import ajax 
ImportError: cannot import name 'ajax' 

TNX求助

+1

欢迎来到SO。你有没有将'django_ajax'添加到INSTALLED_APPS列表中? – kapilsdv

回答

2

你显然是装错了包,由于名称相似与另一个包。那通常发生。

您已经安装django_ajax 0.2.0而您打算使用djangoajax其中有ajax修饰符。前者不具有或使用装饰器。

删除django_ajax有:

pip uninstall django_ajax 

然后安装djangoajax这通常导入为django_ajax,并会被添加为django_ajaxINSTALLED_APPS

pip install djangoajax 

你的进口将不再引发错误:

>>> from django_ajax.decorators import ajax 
>>> 
+0

哇...它的工作... Tnx很多:) –

相关问题