当前第2页 返回上一页
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 | # Database
# https:
DATABASES = {
'default' : {
'ENGINE' : 'django.db.backends.mysql' ,
'NAME' : 'django_test' ,
'HOST' : '127.0.0.1' ,
'USER' : 'root' ,
'PASSWORD' : '123456' ,
'PORT' : '3306' ,
},
#配置第二个数据库
'test' : {
'ENGINE' : 'django.db.backends.mysql' ,
'NAME' : 'xsanjiaocheng' ,
'HOST' : '127.0.0.1' ,
'USER' : 'root' ,
'PASSWORD' : '123456' ,
'PORT' : '3306' ,
}
}
|
#设置数据库路由,将django_test改为你项目的名称。
DATABASE_ROUTERS = ['django_test.database_router.DatabaseAppsRouter']
#配置数据库与app的对应关系
1 2 3 4 5 6 7 | DATABASE_APPS_MAPPING = {
# example:
# 'app_name' : 'database_name' ,
# 'app01' : 'test' ,
'app01' : 'default' ,
'app02' : 'test' ,
}
|
3、在对应的app里的models.py文件里正常创建数据表即可(在创建表时尽量不要使用同样的表名)
app01中的models.py:
1 2 3 4 5 6 7 8 9 10 11 12 13 | class django_test_1(models.Model):
abc = models.CharField(max_length=20)
class Meta:
app_label= 'app01'
app02中的models.py:
class test_1(models.Model):
tests= models.CharField(max_length=20)
|
4、生成迁移文件
和以前一样:python manage.py makemigrations
5、迁移数据库
迁移时需指定数据库名
1 | python manage.py migrate database=test
|
如果针对已创建好的数据库创建对应的models.py文件不用生成迁移文件,直接执行“python manage.py inspectdb > app02/models.py --database=test”的命令即可。
6、操作数据库
1)手动选择数据库
1 | django_test_1.objects.using( 'default' ).create(abc= 'hdajh' )
|
2)自动选择数据库
和以前一样不加using()。
7、 配置urls.py
导入对应app的views.py的文件。最好命名个别名,或者给views.py文件重命名。
其他使用和以前一样。
以上就是python中django操作多数据库的方法(代码)的详细内容,更多文章请关注木庄网络博客!!
返回前面的内容
相关阅读 >>
isinstance在Python中的意思是什么?
Python怎么保留整数
Python的gui是什么
Python ord()是什么?ord()有什么用?
Python的环境变量怎么设置
如何安装Python包
Python生成脚本--实现数据库更新
Python英语是什么意思
Python怎么用引用来改变一个变量
电脑64位怎么下载Python
更多相关阅读请进入《Python》频道 >>
人民邮电出版社
python入门书籍,非常畅销,超高好评,python官方公认好书。
转载请注明出处:木庄网络博客 » python中django操作多数据库的方法(代码)