0
点赞
收藏
分享

微信扫一扫

Dajax 的安装以及详细使用

三次方 2023-01-26 阅读 51


 

  上篇博已经详细的介绍了Dajaxice 的安装配置,以及简单使用

  写这篇博客的主要目的介绍下Dajax的是配置和使用,因为Dajaxice只是简单的应用,在form表单以及复杂的逻辑业务下,Dajax更能胜任。

下面的配置环境在Django 1.6 下进行安装部署,以及使用的,其他版本没有测试。

一、安装Dajax


sudo pip install django_dajax


二、在Django中配置Dajax 

(1)、在settings.py中的INSTALLED_APPS里面添加dajax,


INSTALLED_APPS = (
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.sites',
'dajaxice',
'dajax',
...
)


(2)、在你的app目录下新建一个ajax.py文件,注意:这一点需要注意的是必须是app目录下的根目录,app/ajax.py,如果是app/files/ajax.py的话就不行。

在此文件中写请求方法处理,如下:


from dajax.core import Dajax
def multiply(request, a, b):
dajax = Dajax()
result = int(a) * int(b)
dajax.assign('#result','value',str(result))
return dajax.json()


  (3)、将dajax添加到你的html 表头里。目前dajax支持4种主流的JS框架:


jQuery 1.7.2 - dajax/jquery.dajax.core.js
Prototype 1.7 - dajax/prototype.dajax.core.js
MooTools 1.4.5 - dajax/mootools.dajax.core.js
Dojo 1.7 - dajax/dojo.dajax.core.js


  我在Django里使用的是jquery,所以引入jquery.dajax.core.js就可以了

 


{% static "/static/dajax/jquery.dajax.core.js" %}


如果出现导入不成功的情况,主要是因为dajax使用了django.contrib.staticfiles,所以导入文件就方便了,运行 python manage.py collectstatic,会将dajax文件放到 settings.py中设置的STATIC_ROOT文件夹下:

如我的当前STATIC_ROOT文件目录在:/var/www/example.com/static/ ,需要如果没有读写权限的话,需要使用sudo 执行。


$:/var/www/example.com/static$ ls
admin dajax dajaxice __init__.py oak


这样的话 引入语句就可以这样写:


{% static "dajax/jquery.core.js" %}


 

  PS:在老版本的Dajax中 

from dajax.core.Dajax import Dajax  会报错,

  更改方法:

from dajax.core import Dajax

三、使用方法

在前台界面中:

<button οnclick="Dajaxice.app.example(my_callback)">Click here!</button>


function my_callback(data){
Dajax.process(data);
/* Your js code */
}


后台ajax.py里面代码:


from dajax.core import Dajax

def example(request):
dajax = Dajax()
dajax.alert('Hello from python!')
return dajax.json()


 

 

 

   更多API:

  • ​​API​​
  • ​​alert(message)​​ 
  • ​​assign(selector, attribute, value)​​
  • ​​add_css_class(selector, value)​​
  • ​​remove_css_class(selector, value)​​
  • ​​append(selector, attribute, value)​​
  • ​​prepend(selector, attribute, value)​​
  • ​​clear(selector, attribute)​​
  • ​​redirect(url, delay=0)​​
  • ​​script(code)​​
  • ​​remove(selector)​​
  • ​​add_data(data, callback_function)​​

    

至此,关于dajax的安装配置,以及使用就写到这里,如果有什么疑问可以留言探讨,谢谢。

 

 

举报

相关推荐

0 条评论