iamsk 发表于 2013-1-30 01:32:09

Django的多数据库支持,太酷了~

在用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 ;)
页: [1]
查看完整版本: Django的多数据库支持,太酷了~