gpt4 book ai didi

python - Django Choice 领域 Web 服务最佳实践

转载 作者:行者123 更新时间:2023-12-01 04:34:08 27 4
gpt4 key购买 nike

class Book(models.Model):

CATEGORY = (
(1, "Sci-Fi"),
(2, "Romance"),
(3, "Fantasy"),
# more categories...
)

title = models.CharField(max_length=255)
cat = models.IntegerField(choices=CATRGORY, null=True, blank=True)
author = models.ManyTboManyField('User', related_name="book")

这是我的模型。我想要的是如何/应该发送响应数据,我的意思是格式。(JSON)

例如(对一本书的回应)

{"author": [1,3,4], "title": "my book", "cat": 1, 'bookid': 23 } 

{"author": [1,3,4], "title": "my book", "cat": "Sci-Fi", 'bookid': 23 }  #slugify name

第一种类型的问题是我必须在前端维护这个元组/映射(用于最终用户可视化)以及用于内部映射、api-DB 交互的 id。

从第二种类型,我不知道如果某些 api post/put 一些数据到我的系统,我将如何映射,我不知道这个类别属于哪个 id。

我需要像您这样在 Web 服务开发方面拥有丰富经验的人的建议,可以指导我以最佳方式开发 API,这可能对 future 的新手或学习东西的读者有所帮助。

最佳答案

我个人更希望两者都出现在 API 响应中,例如:

{"author": [1,3,4], "title": "my book", "cat_id": 1, "cat_name": "Sci-Fi"} 

原因是,仅 id 本身并不能传递有关类别的太多信息,并且名称在将来是可变的,因此单独使用也没有帮助。

当然,在两者都存在的情况下,我们可以在文档中指定 cat_name 用于装饰目的,而 cat_id 则保持不变。

关于python - Django Choice 领域 Web 服务最佳实践,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32018147/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com