django admin 在1.0中的变化

来源:互联网 发布:淘宝怎么图片找同款 编辑:程序博客网 时间:2024/05/15 08:32

    django step by step,这两天看了一下通讯录的那个例子。遇到一些问题,参考网上看到的关于1.0版本的admin的有些修改不够完善,于是查阅django document得以解决。其实文档真的是很好的学习资料,如果有时间把文档仔细看一下,很多问题都可以解决。不过英语版的看起来有些费力,为了更多的人方便解决问题,同时自己有个系统的学习和了解,翻译一下这个文档还是个不错的事情,呵呵。等有一段稍微完整的时间再来考虑吧。

     下面来说说admin功能在django 1.0中的一些变化:

      1、修改urls.py,将from django.contrib import admin ;admin.autodiscover()这两句的注释去掉,将最后的 (r'^admin/(.*)', admin.site.root)注释去掉。

      2、创建超级用户

           在项目目录下运行manage.py  createsuperuser。输入用户名、邮箱地址、密码即可。

      3、以刚才创建的用户登录,发现没有所创建的Adress这个app。

      4、这是问题的关键,涉及到的几个变化:

           1)maxlength 变为 max_length

           2)models中的方法__str__由__unicode__取代。并且在方法中需要使用Unicode编码,如u"test"

           3) 以admin.py取代models中的内部类class Admin。如果是老版本的,则留在那里不会有影响,但是在浏览器中还是无法看到定义的app。

           于是models.py如下:

 

 

同时在app下添加admin.py文件,如下:

 

 

 

做完上述工作,打开浏览器应该可以看见新建的app了。更多关于django1.0的变化可以参考这篇文章http://docs.djangoproject.com/en/dev/releases/1.0-porting-guide/    Porting your apps from Django 0.96 to 1.0

 

总的来说,对于一些简单的功能,用django admin还是很方便的。