<i id='4HDz1'><tr id='4HDz1'><dt id='4HDz1'><q id='4HDz1'><span id='4HDz1'><b id='4HDz1'><form id='4HDz1'><ins id='4HDz1'></ins><ul id='4HDz1'></ul><sub id='4HDz1'></sub></form><legend id='4HDz1'></legend><bdo id='4HDz1'><pre id='4HDz1'><center id='4HDz1'></center></pre></bdo></b><th id='4HDz1'></th></span></q></dt></tr></i><div id='4HDz1'><tfoot id='4HDz1'></tfoot><dl id='4HDz1'><fieldset id='4HDz1'></fieldset></dl></div>

    <legend id='4HDz1'><style id='4HDz1'><dir id='4HDz1'><q id='4HDz1'></q></dir></style></legend>
    • <bdo id='4HDz1'></bdo><ul id='4HDz1'></ul>
    <tfoot id='4HDz1'></tfoot>
  1. <small id='4HDz1'></small><noframes id='4HDz1'>

    1. 在DRF中使用HyperlinkedModelSerializer有什么好处?

      时间:2024-04-20
        <legend id='I9QOj'><style id='I9QOj'><dir id='I9QOj'><q id='I9QOj'></q></dir></style></legend>

      • <i id='I9QOj'><tr id='I9QOj'><dt id='I9QOj'><q id='I9QOj'><span id='I9QOj'><b id='I9QOj'><form id='I9QOj'><ins id='I9QOj'></ins><ul id='I9QOj'></ul><sub id='I9QOj'></sub></form><legend id='I9QOj'></legend><bdo id='I9QOj'><pre id='I9QOj'><center id='I9QOj'></center></pre></bdo></b><th id='I9QOj'></th></span></q></dt></tr></i><div id='I9QOj'><tfoot id='I9QOj'></tfoot><dl id='I9QOj'><fieldset id='I9QOj'></fieldset></dl></div>
          <tbody id='I9QOj'></tbody>

          • <small id='I9QOj'></small><noframes id='I9QOj'>

            • <bdo id='I9QOj'></bdo><ul id='I9QOj'></ul>

              <tfoot id='I9QOj'></tfoot>
                本文介绍了在DRF中使用HyperlinkedModelSerializer有什么好处?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

                问题描述

                参考this link,我见过很多在Django睡觉框架中使用HyperlinkedModelSerializer的示例。上面写着:

                HyperlinkedModelSerializer类类似于ModelSerializer 类,除非它使用超链接来表示关系, 而不是主键。

                我的问题是,与常规模型序列化程序相比,使用它们有哪些用例/好处?

                推荐答案

                唯一的区别是,正如您包括的引用一样,主键和外键由指向这些资源的URL表示,而不仅仅是实际的键值。

                这样做的好处是,当您要检索相关对象时,不必在前端构建资源URL。

                完全不同的是嵌套表示,它允许您在序列化程序输出中内联相关对象。如果您认为API使用者可以立即拥有相关项而不是发出额外的请求来检索它们,则可以将其与ModelSerializerHyperlinkedModelSerializer结合使用。

                嵌套表示可以通过Meta.depth选项或使用相关模型的序列化程序(而不是RelatedField)来实现。

                正如@xleon在他的评论中所说,使用URL作为键可以让其他开发人员更容易理解您的API。

                这篇关于在DRF中使用HyperlinkedModelSerializer有什么好处?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

                上一篇:根据查询参数进行筛选 下一篇:Python套接字在两台不同的计算机上未连接

                相关文章

                1. <legend id='VyT3E'><style id='VyT3E'><dir id='VyT3E'><q id='VyT3E'></q></dir></style></legend>

                  • <bdo id='VyT3E'></bdo><ul id='VyT3E'></ul>
                2. <small id='VyT3E'></small><noframes id='VyT3E'>

                  1. <i id='VyT3E'><tr id='VyT3E'><dt id='VyT3E'><q id='VyT3E'><span id='VyT3E'><b id='VyT3E'><form id='VyT3E'><ins id='VyT3E'></ins><ul id='VyT3E'></ul><sub id='VyT3E'></sub></form><legend id='VyT3E'></legend><bdo id='VyT3E'><pre id='VyT3E'><center id='VyT3E'></center></pre></bdo></b><th id='VyT3E'></th></span></q></dt></tr></i><div id='VyT3E'><tfoot id='VyT3E'></tfoot><dl id='VyT3E'><fieldset id='VyT3E'></fieldset></dl></div>
                    <tfoot id='VyT3E'></tfoot>