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

Django如何连接前端?

时间:2023-03-07 02:14:58 网络应用技术

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

  通常,客户端(即您说的前段)和服务器(您将使用Django)通过HTTP协议(除非有特殊需求,否则您将使用其他或自定义的协议)。

  在客户端(PYQT)中,您可以安装请求库,该请求库可以帮助您将HTTP请求发送到服务器,

  在Django中,您可以使用Django Rest Framework Web链接来处理客户端的HTTP请求。

  Django的最大缺点是其后端 - 端式工具链。Django不受几乎必要的袋装管理人员(例如NPM,YARN)的前端开发和工程链的必要WebPack工具链的支持。PIP可以使用后端软件包管理,并且前端袋只能手动管理。因此,在我最近的工程项目中,Django提供的前端模块仅被用作API服务器。确实是可惜的,因为Django的模板引擎也具有一些简单的功能,因此放弃确实有点不愿。因此,可以将两者的优势结合在一起吗?

  经过一番探索,对互联网的最可靠答案是使用django-webpack-loader和webpack-bundle-tracker。原则是WebPack-bundle-tracker可以输出webpack.django-webpack-loader的编译过程和结果。插件是Django和WebPack之间的桥梁。使用上述汇编结果,WebPack之后的静态文件自动加载。

  当您需要使用WebPack生成的静态文件时,请使用模板上的以下模板语言自动完成静态文件的注入。

  只需尝试一下,您应该能够实现我想要的效果,并有时间明天学习。

  类别和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配置中,我们可以修改所有主机。一些在线数据。我们调试本地数据的一部分,因此我们需要重新确定本地主机

  修改一些主机链接

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

  结论:以上是首席CTO的所有内容都注明了Django如何连接到前端。感谢您阅读本网站的内容。我希望这对您有帮助。有关Django如何连接该站点上的前结果的更多信息。