|
|
在用1.0的时候,就想着能否有多数据库支持(当时的想法可能不是这个名称),大概意思就是我新添加的model能否使用独立的数据库,可以直接在model里设置这个表的数据库链接方式,用户名、密码等等。当时想这些只是为了方便测试,以防止测试新功能却要改动运行机中的数据库,而且加表等等。而这些,可能也需要通过一系列权限,很是麻烦(公司中为了安全起见,可以理解)。
现在1.2中终于添加了这个支持,而系统的django库也顺势更新为这个版本。
详细文档请见:http://docs.djangoproject.com/en/1.2/topics/db/multi-db/
基本用法:
在settings.py中添加新的数据库:
DATABASES = { 'default': { 'NAME': 'app_data', 'ENGINE': 'django.db.backends.postgresql_psycopg2', 'USER': 'postgres_user', 'PASSWORD': 's3krit' }, 'users': { 'NAME': 'user_data', 'ENGINE': 'django.db.backends.mysql', 'USER': 'mysql_user', 'PASSWORD': 'priv4te' }}models无须改变比如需要使用users这个数据库,则,使用using方法:查找:Author.objects.using('users').all()保存:my_object.save(using='users')删除:my_object.delete(using='users')更多功能,就看文档吧自iamsk7.appspot.com转移,2010-08-22,准备放弃自己做的blog ;) |
|