当前位置: 首页 > 网络应用技术

如何致电其他库(Django调用其他应用程序API)

时间:2023-03-05 20:27:19 网络应用技术

  本文将告诉您Django如何调用其他库,Django调用与其他应用程序相对应的相应的知识点。我希望这对您有帮助。不要忘记收集此网站。

  本文目录清单:

  1.如何使用Django中的第三方库2. Django教程-02连接初始化数据库3.如何在Django中使用第三方库4.如何在Django中使用多个数据库。

  使用和数据库之间的区别是:

  如果不是Defalut(默认数据库),请在streatings.py中添加与命令之后数据库的settings.py相对应的名称。

  数据库同步(创建表)

  python manage.py syncdb #synchronous默认数据库,与原始

  #synchronous数据库DB1(注意:不是数据库名称是db1,settings.py中的db1,但是您可以使这两个名称相同且易于使用)

  python manage.py syncdb -database = db1

  数据输出

  python manage.py dumpdata app1 -database = db1 app1_fixture.json

  python manage.py dumpdata app2 -database = db2 app2_fixture.json

  python manage.py dumpdata auth_fixture.json

  数据库指南

  python manage.py loaddata app1_fixture.json -database = db1

  python manage.py loaddata app2_fixture.json -database = db2

  Django教程-01安装和使用

  在上面的文章中,引入了安装Django的方法。让我们谈谈在此处连接数据库。

  本文主要介绍坑和解决方案

  正常连接和初始化数据库的命令是

  执行此命令时,出现以下错误

  在调查一部分之后,当我配置数据库时,我设置了一层默认值并将其修改如下。

  然后,当您继续执行迁移时,您将报告以下错误

  该机器的环境是Mac计算机。在官方教程上操作时,发现使用MySQLClient安装的Python软件包将取决于MySQL或MySQL-CLIENT的安装,但是当我安装MySQL和MySQL-CLIENT时,我发现了解决方案。后来发现在settings.py文件中,添加了以下代码,即可以连接pymsql。

  或者可以在settings.py中添加代码__init__.py

  然后执行python manage.py迁移命令,以发现该表是成功创建的。新表不影响原始库的其他表。

  数据库= {

  '默认': {

  '引擎':'django.db.backends.sqlite3',#add'postgresql_psycopg2','mysql','sqlite3'或oracle'。

  'name':'demo.db',#或数据库文件的路径,如果使用sqlite3。

  #下面的设置未与sqlite3一起使用:

  “用户”:'',

  '密码': '',

  “主机”:',#通过域插座为Localhost的#空位或通过TCP的Localhost的“ 127.0.1”。

  '端口':'',#设置为默认的字符串。

  }

  }

  instasted_apps =((

  'django.contrib.auth',

  'django.contrib.contenttypes',

  'django.contrib.sessions',

  'django.contrib.sites',

  'django.contrib.messages',

  'django.contrib.staticfiles',

  #取消注释下一行以启用管理员:

  #'django.contrib.admin',

  #取消注释下一行启用管理文档:

  #'django.contrib.admindocs',

  '南',

  “学习”,

  '图书',

  治愈

  1.2后,Django支持使用多个DB。那么如何使用呢?

  1.修改设置

  01Databases = {

  02'默认值':{

  03'名称':'app_data',

  04'引擎':'django.db.backends.postgresql_psycopg2',

  05'用户':'Postgres_user',

  06'密码':'s3krit'

  07},,

  08“用户”:{

  09'名称':'user_data',

  10'引擎':'django.db.backends.mysql',

  11“用户”:“ mysql_user”,

  12'密码':'priv4te'

  13}

  14}

  15

  16database_routers = ['path.to.myapprouter']

  2.实现自己的数据库路由器,该路由器确定每个程序使用哪个DB。

  01class myapprouter(对象):

  02”路由器控制模型上所有数据库操作的路由器

  03 MyApp应用程序“”“”“”“”

  04

  05 def db_for_read(self,model,**提示):

  06“指向MyApp模型上的所有操作

  07如果model._meta.app_label =='myApp':

  08返回“其他”

  09返回无

  10

  11 def db_for_write(self,model,**提示):

  12“点上的MyApp模型的所有操作都可以'其他'”

  13如果model._meta.app_label =='myApp':

  14返回“其他”

  15返回无

  16

  17 def laster_relation(self,obj1,obj2,**提示):

  18“如果涉及MyApp中的模型,请允许任何关系”

  19如果obj1._meta.app_label =='myApp'或obj2._meta.app_label =='myapp'

  20返回正确

  21返回无

  22

  23 def allow_syncdb(self,db,型号):

  24“确保MyApp应用仅出现在'其他db”上

  25如果db =='其他':

  26返回模型._META.APP_LABEL =='myApp'

  27 elif model._meta.app_label =='myApp':

  28返回错误

  29返回无

  同步数据库时,默认值将同步到默认数据库。当然

  [播放]查看平原复制打印?

  tt class =“ xref std std std std djadminopt docutils fillal” style =“ text-design:none; white spie:nowrap; nowrap; color:rgb(35,79,50); margin section:0px; 0px; margin-righh:margin-righh:margin-righh:边界底宽:1px;边界底彩:RGB(35、79、50);边界Xyle:点缀;

  $ https://www.shouxicto.com/article/manage.py syncdb -database =用户/tt

  那么如何在程序中选择?

  例如,以下代码将选择默认数据库

  [python]查看普通复制打印?

  跨度样式=“ font-family:monospace;颜色:#234f32;”#这将在“默认”数据库上运行。

  rution.objects.all()

  #这会。

  rution.objects.using('默认值')。all()/跨度

  但是以下代码将选择其他数据库

  [python]查看普通复制打印?

  跨度样式=“ font-family:monospace;颜色:#234f32;”#这将在“离子”数据库上运行。

  wuter.objects.using('其他')。all()/跨度

  以上是查询情况。

  [python]查看普通复制打印?

  跨度样式=“ font-family:monospace;颜色:#234f32;

  删除时

  [python]查看普通复制打印?

  跨度样式=“ font-family:monospace;颜色:#234f32;”u = user.objects.using('legacy_users')。获取(用户名='Fred')

  u.delete()#将从`勒格_users的数据库/跨度删除

  如何称呼Django的其他库的介绍,让我们谈谈它。感谢您阅读本网站的内容。有关Django如何调用其他应用程序的更多信息。Django如何致电其他库。不要忘记在此网站上找到它。