`
iamsk
  • 浏览: 70909 次
  • 性别: Icon_minigender_1
  • 来自: 珠海
社区版块
存档分类
最新评论

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 ;)
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics