当前位置: 首页 > 知识库问答 >
问题:

使用带有Django Rest框架的Swagger,我能看到不同领域的POST参数而不是一个体吗

公沈浪
2023-03-14

我实际上正在使用Django Rest框架在Django网站上创建API。我正试着用Swagger记录他们。

所有的事情几乎都像预期的那样正常工作,除了一些事情:

我来解释一下:

我有这个模型(models.py)

class Technology(models.Model):
    """
    This model defines the different technologies
    """
    name = models.CharField(max_length=CHAR_SHORT)
    path = models.CharField(max_length=CHAR_SHORT, validators=[validate_tech_path], help_text='this is only used to construct the url')
    image = models.ImageField()
    mailer = models.EmailField(blank=True)
    external = models.BooleanField(default=False)
    internal = models.BooleanField(default=False)

    class Meta:
        verbose_name_plural = "technologies"
        ordering = ['name']

    def __str__(self):
        return self.name
class TechnologySerializer(serializers.ModelSerializer):
    """
    This model defines the different technologies
    """
    class Meta:
        model = Technology
        fields = ('id', 'name', 'path', 'image', 'mailer', 'external', 'internal')
class TechnologyViewSet(viewsets.ModelViewSet):

    queryset = Technology.objects.all()
    serializer_class = TechnologySerializer
    http_method_names = ['get','post','delete','put']

是否可以为所有参数设置如下内容:

API参数想要多谢。

共有1个答案

呼延英奕
2023-03-14

尝试使用ListCreateAPIView而不是ModelViewSet您将能够看到您的帖子https://www.django-rest-framework.org/api-guide/generic-views/#ListCreateAPIView。

from rest_framework.generics import ListCreateAPIView
class TechnologyViewSet(ListCreateAPIView):

    queryset = Technology.objects.all()
    serializer_class = TechnologySerializer

希望有帮助。

 类似资料:
  • 我需要做一个api来做某种逻辑(例如:处理一些数据,生成一个wordcloud,做一个ml层……)并返回简单状态。在我想做的逻辑中,我不需要模型,只需要接收一个带有一些参数的json,然后做我想做的事情。 我刚刚创建了api视图,但是我找不到在主体中接收参数的方法。 我读到了一个很好的模式来设计我的方法(Django Rest框架业务逻辑,Django中业务逻辑和数据访问的分离),我在api.py

  • 我想我会在这里问这个问题,因为我不太确定我会错在哪里。我正在尝试使用Django Rest框架类通过AJAX执行POST请求。但是,每当事件触发时,我都会收到以下错误: 这是堆栈跟踪中显示的内容: 上下文 我试图做到这一点,当用户单击“添加到列表”按钮时,它会向用户定义的列表发送一个cafeName(以及最终的其他详细信息)。 我想知道是否有人可以看看我的代码,并给我一些指导,我哪里出了问题? 代

  • 问题内容: 当我尝试从Realm数据库中获取对象时,该应用程序崩溃了,并且出现以下错误: 这是我的活动 这是模型 有人知道如何解决它?公共类Haltes实现RealmModel { } 问题答案: 我的问题通过在所有其他插件之后声明来解决。 应用级Gradle

  • 问题内容: 当我打电话给 它抛出exepiton:这是错误 这是我的应用程序类 这是我的境界模型 这是我尝试检索模型的地方 gradle配置: 我尝试了所有可以在堆栈上找到的内容: 清理构建,重建项目,启用注释处理器,重新安装apk,使缓存无效/重新启动 问题答案: 问题在gradle文件中。仅使用插件的排序规则的问题,由于@EpicPandaForce的评论,问题已解决,我正在写答案,以帮助其他

  • 这是我的输入: 它说: 详细资料 我到底做错了什么?

  • 在KeyCloak中可以让一个领域的用户管理另一个领域吗?我的目标是拥有两个领域--adminRealm和UserRalm。在adminRealm中应该是用户,他们将能够登录到我们的管理应用程序,他们可以通过Keycloak rest api创建“普通用户”,这将被放置到UserRealm中。 目前我的解决方案工作在一个领域,在那里我有管理用户,可以登录到我的管理应用程序,在那里他可以在相同的领域