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

Django如何解决界面同步问题?

时间:2023-03-07 01:09:20 网络应用技术

  简介:今天,首席CTO Note将与您分享Django如何解决接口同步问题的相关内容。如果您可以解决您现在面临的问题,请不要忘记注意此网站。让我们现在开始!

  如果是相同的数据库,那么您的同步数据表结构是否相同。如果相同,则可以使用数据库的同步复制机制来解决;

  (主要是中间柱)如果表结构不同,如果在应用程序层中没有处理该表结构,则有两种参考方法:

  1.将数据推到B;当A具有数据时,真实时间或非真实时间(使用事件或触发器)将数据推到B,并且B处理B;

  2. B从A中提取数据,使用A作业(MySQL中的作业)定期从A中获取数据并处理它;

  此外,您可以选择在应用程序层上进行。我不会介绍此内容,并且有可能基于业务逻辑。

  类别和vue接口对接

  首先是取出所有类别的所有内容

  由于前端vue显示类别已分类

  第一级,两个级别和三个级别如下

  因此,我们需要取出所有三个内容

  但首先,您需要拿出第一级,然后镶嵌第二级,然后在第三季度插入第二级,就像上面商品中显示的类别的内容一样。

  我们仍然需要编写序列化器

  这是第一个级别的第二级第二级第二级镶嵌第三级 -

  但是这里有一个问题,不要犯错。这三个类别的立场并不是错误的。

  因为第一级正在调用第二级,所以必须先写第二级

  因此,第二级必须处于相同级别的相同级别。

  然后是视图

  在过滤器中添加类别_type = 1,以便您可以直接显示第一个类别,然后对第二个小类别有更分层的感觉。

  同时,我们必须处理单个信息

  因此,我们继承了Mixins.RetRieveModelMixin,这是一个显示详细信息的类

  例如,在动物园中显示某个动物

  /zoos/id

  这样的URL

  同样,我们只能直接配置类别的URL。

  您不需要考虑以后的ID是否需要配置URL。您不需要考虑它,因为我们继承了视图类

  他帮助我们解决了这些问题

  您可以以这种方式看到它来处理我们的后端

  但是,在处理前端对接时,您会发现它无法显示

  因为有一个十字架问题

  这个问题可以单独解决前后的后端,因此请谈谈后端方法

  只需修改服务方

  在GitHub上搜索Django-Cors-neaders以查找此信息

  如何以相同的方式使用它

  安装

  PIP安装django-cors头

  然后在Settins中的intasted_apps配置和设置中的中间件配置

  请注意此处的中间软件配置

  'corsheaders.middleware.corsmiddleware',

  'django.middleware.common.commonmiddleware',

  这两个必须放在

  'django.middleware.csrf.csrfviewmiddleware',,

  否则,这将在此前面有错误

  也配置

  cors_origin_allow_all = true

  允许交叉域访问其默认值是错误的

  这可以正常显示在前端

  为什么发生交叉域访问

  因为在VUE中的API配置中,我们可以修改所有主机。一些在线数据。我们调试本地数据的一部分,因此我们需要重新确定本地主机

  修改一些主机链接

  这导致使用在线主机端口的交叉域本身,但是数据中的某些数据是本地主机端口导致交叉域访问

  克莱里(Clery)是基于Python开发的简单,灵活和可靠的分布式任务队列框架。它支持使用任务队列在分布式计算机/流程/线程上执行任务计划。典型的生产者消费者模型主要由三个部分组成:

  例如,系统在系统前批量介绍历史数据,发送文本消息,发送电子邮件和其他时间 - 耗费的任务

  1.安装兔子。在这里,我们将RabbitMQ作为经纪人。安装完成后

  Ubuntu Linux安装

  CentOS Linux安装

  Apple Mac安装需要配置

  配置环境变量(Apple用户)

  启动RabbitMQ服务器

  2.安装克莱里

  3.芹菜在Django项目中使用,Django项目目录结构(简化)如下

  4.创建OA/CLERY.PY主文件

  5.在OA/__ init__.py文件中添加以下内容,以确保Django启动时可以加载此应用程序

  6.每个应用程序都会创建一个任务。Py文件,此处使用/tasks.py。

  7. Views.py引用以使用此任务异步处理

  8.启动克莱里

  9.这样,在调用帖子方法时,可以异步地处理内部的添加

  定时任务的使用方案非常普遍。例如,我需要定期向老板发送报告?

  1. oa/clery.py文件添加以下配置以支持计时任务crontab

  3.首发克莱里·比特(Start Clery Beat),芹菜已经开始了一个节拍过程,该过程一直在不断判断是否有执行的任务

  修改设置中的数据库

  数据库= {

  '默认': {

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

  “名称”:'书籍',#your数据库名称

  “用户”:“ root”,#your数据库用户名

  '密码':'',#your数据库密码

  '主机':'',#your数据库主机,停留在localhost的简短默认值中

  '端口':'3306',#your数据库端口

  }

  }

  instasted_apps =((

  “书籍”,#您的数据库名称

  治愈

  在MySQL中创建书籍数据库

  检查是否有语法错误

  使用python manage.py sqlall书籍显示mysql语法

  在Python Manage.py同步同步模型中使用数据库

  7

  成功的创造!

  让我首先谈论前排条件

  1.首先构建django环境win+r打开命令提示符pip安装django

  3.然后创建一个自己的应用程序

  同样,在命令提示符的路径上,输入新创建的项目所在的路径,输入python manage.py startapp xxx(这是指您要创建的名称),您可以看到创新的编辑器可以看到

  4.正式开始开发邮政请求

  首先在seetings.py文件中设置参数以对其进行修改,如图所示

  Views.py

  最后,在模板文件夹下创建一个HTML文件以简单地写下前端

  我直接发布登录。html我在这里写的

  代码部分是要完成效果

  您也可以输入提琴手检查验证。为了找到更好的选择,我们首先打开提琴手,然后输入用户名密码。

  你可以得到这样的包

  用户名,密码的值也与我们输入的输入一致

  在此处完成简单的帖子请求开发

  结论:以上是主要CTO的全部内容,请注意Django如何解决界面同步问题。我希望这对每个人都会有所帮助。如果您想了解有关此信息的更多信息,请记住收集并关注此网站。