Django rest framework Django REST框架能否向客户端指示只读字段?

这是一个新手问题。我看到Django rest框架的可浏览API能够检测序列化程序中定义的只读字段,并将它们从提交给用户进行PUT/POST操作的HTML表单中排除 这里使用的机制是什么?我可以使用它向远程客户端指示只读字段吗?在JSON对象本身中,我看不到只读字段和可写字段之间的格式有任何差异,因此我猜测其中涉及一些元数据,但在文档中找不到任何内容 我正在使用Django版本1.7和Django rest框架版本3.1.3。U应该使用,它是一个记录Django rest框架API的应用程序 在

Django rest framework Djangorest框架。仅视图集中的必填字段

基本上,viewset的必填字段基于models.py文件。如果我使用create方法,并且在models.py中定义为blank=True和null=True,则此字段不是必需的 但是如何定义models.py中不需要此字段,而是viewset.py中需要此字段?实际上,序列化程序将此字段的required设置为True,从而需要此字段 如果不想显式定义字段,可以利用

Django rest framework 无法在django rest API中使用POST请求存储数据

免责声明:-我是初学者。 我正在尝试构建一个Django REST API,它可以支持所有CRUD操作。 我能够从API调用(127.0.0.1/API/get)中获取数据,也能够从UI中手动添加、修改和删除记录(在get请求之后)。 我已经在模板目录中创建了一个表单,该表单接受用户的输入,并在提交时发送到同一url(127.0.0.1/api/get),但数据未保存,而是返回以下内容:- HTTP 400错误请求 允许:获取、发布、头、选项 内容类型:application/json 更改:接

Django rest framework 基于类的视图CreateView和混合CreateModelMixin之间有什么区别

我最近开始学习Djangorest框架,我遇到了两种创建模型实例的方法,一种是通过Djangorest框架CreateAPIView,另一种是CreateModelMixin。所以我想知道它们之间的区别,以及执行相同功能的其他mixin和视图之间的区别。这里是区别:mixin如代码注释中所述,是基于类的通用视图的基本构建块-它们基本上是视图不可知的python对象,这意味着您将无法单独使用CreateModelMixin来实际创建模型。您需要在新视图上继承它,而CreateAPIView正是这样

Django rest framework Django rest框架:要使用哪种通用APIview?

我想允许用户在视图中获取(列表)、发布和删除方法?在这种情况下,最好的方法是什么?有不同的方法 获取列表:get\u queryset(self) 保存:perform\u create(self,serializer) 要更新:执行更新(self,serializer) 要删除:perform\u destroy(self,instance) 您可以参考Django rest框架的文档:有不同的方法 获取列表:get\u queryset(self) 保存:perform\u create(s

Django rest framework 可浏览API中无值

在Django REST框架中,在Django模型中给定一个字段,该字段具有null=True和blank=True,并且在序列化程序中该字段为required=False,有没有办法让可浏览API使用空值呈现HTML下拉列表?使用JSON可以将字段设置为null,但我不知道如何通过HTML表单也允许这样做 图片中说: 我目前有: 我想去:找到了。简化: class SwitchPortSerializer(serializers.HyperlinkedModelSerializer):

Django rest framework django rest框架选择超链接字段的两种可能视图

所以我对用户有两种不同的API视图,一种是超级用户可以使用的,另一种是普通用户可以使用的 目前的问题是,默认情况下,我的超链接将用于auth_users视图,而不是用户视图 i、 e 而不是 'url': 'localhost:8000/users/5/' 以下是相关文件的摘录 *URL* class basic_user_serializer(serializers.HyperlinkedModelSerializer): url = HyperlinkedIdentityField

Django rest framework 用于呈现JSON和HTML的通用视图

在ListAPIView中,我尝试重载类以呈现HTML和JSON,如下所示。对于JSON呈现,需要提供serializer.data以响应呈现JSON输出。对于HTML呈现,需要提供dict类型的上下文数据和模板名称,以便响应呈现HTML 为了重用现有的rest框架代码,我尝试提取rest框架已经序列化的数据,并一次性使用序列化的数据和模板名称重载响应数据。由于提供的数据不是dict类型,因此结果是HTML模板未按预期呈现 class UserProfileList(generics.ListA

Django rest framework django rest框架如何解析对对象的URI引用

如何使用django rest框架将URL参数(比如,视图函数)解析为引用的模型对象(或queryset)?我知道如何使用ModelViewSet/Serializer对来允许对特定模型对象执行CRUD操作,但是对于其他一些以两个模型对象URL为参数的视图函数,该视图函数如何将这些URL转换为相应的查询集?显然,可以手动解析URL,提取URL的“模型”和“id”部分,并检索相应的查询集。但这似乎是django rest框架中的一个基本操作,当您在模型中有带有超链接模型序列化器和外键字段的Mode

Django rest framework 如何创建不同的Django Api Url路径

Django 2.1、python 3.6、Djangorest框架 当我转到下面的url时,我可以看到我的数据(很棒!)http://127.0.0.1:8000/api/cards/1这是我在api页面上看到的内容- HTTP 200 OK Allow: GET, PUT, PATCH, DELETE, HEAD, OPTIONS Content-Type: application/json Vary: Accept [ { "id": "1", "

Django rest framework 如何在django rest框架中从APIView向Serailizer传递上下文

我试图从APIView获取序列化中的上下文, 如何从django rest框架中的APIView将上下文传递给Serailizer这是如何将上下文传递给序列化程序的,如果您手动实例化它的话 serializer=MySerializer(data=data,context={'request':'format':self.format\u-kwarg,self.request,'view':self}) 当然,您可以将序列化程序中所需的任何其他数据添加到上下文词典中,但它通常包含请求对象、视图和

Django rest framework Django Rest框架从视图返回库请求的响应

我有以下两个视图,在一个特定的参数上,我需要在收到某些参数时向另一个视图发送补丁请求。然而,我得到以下错误,如何纠正这一点 Expected a `Response`, `HttpResponse` or `HttpStreamingResponse` to be returned from the view, but received a `<class 'requests.models.Response'>` 收到查询参数时调用patch_emp_mast,但由于前面提到的错

Django rest framework 使用Django REST框架和令牌身份验证的服务器端会话

我在Django rest Framework(DRF v.3.12.1)项目中使用基于令牌的身份验证(通过dj rest auth 1.1.2)。在初始视图基础登录之后,服务器会发出一个令牌,客户端必须在每个请求中将该令牌包含在HTTP身份验证头中 我想做的是将令牌身份验证与服务器端会话相关联,类似于Django会话框架提供的功能。也就是说,我想创建一个可缓存的会话对象,该对象存储用户角色之类的信息,否则需要在每次请求时从数据库中检索这些信息 这个问题没有现成的解决方案,是吗?据我所知,Dja

Django rest framework 从django rest框架中的CustomField获取post数据

简而言之: 我有一个序列化程序django rest框架,它有两个自定义字段,它们与我的模型的字段不直接对应,并且具有不同的名称。to_internal_value方法可能有效,但我不知道如何访问这些字段的post数据 如果你需要我的案子的更多细节: 我有一个django模型,看起来像这样: class Requirement(models.Model): job = models.ForeignKey('Job', related_name = 'requirement

Django rest framework 权限类已验证,无法在DRF中工作

我已经使用了令牌身份验证,它工作正常,即它正在验证用户,然后用户登录。但是在我的视图中,我为其中一个视图将权限类设置为IsAuthenticated,即使用户是经过身份验证的用户,也不允许对其进行身份验证。 下面是显示我已登录的屏幕截图(jadhav@gmail.com): 下一个标签上写着“未提供认证详细信息”: 有人能告诉我出了什么事吗? 好的,我将提供详细信息: 以下是我的设置: REST_FRAMEWORK = { 'DEFAULT_AUTHENTICATION_CLASSE

Django rest framework 用一个方法序列化两个值

我有一个带有两个字段的序列化程序,如下所示: first_installations_date = serializers.SerializerMethodField() sec_installations_date = serializers.SerializerMethodField() def get_first_installation_date(self, obj): return self._extract_date(obj, key="first") def get_f

Django rest framework Django Rest框架中的Group by

我有一个会议模型。会议有一个用户参加。我想汇总参加会议的用户的所有会议,以显示在一些分析视图中 # models.py class Meeting(models.Model): user = models.ForeignKey(User) # urls.py router.register( r"meetings-by-user", views.MeetingsByUserViewSet, basename="meeting") ...

Django rest framework 如何使用客户端处理延迟加载数据表?

我有一个包含3500个条目和外键的表 我正在使用客户端处理数据表:django rest框架和Ajax 加载最多需要10秒 有没有一种方法可以显示前10个条目(第一页结果)——让用户不会认为我的网站坏了,因为它花了太长时间——而其余条目则在后台加载 同时也在寻找负载速度的优化。 谢谢你抽出时间 编辑: models.py class Bibrest51(models.Model): cadastro_id = models.AutoField(primary_key=True)

Django rest framework DRF和Oauth2:创建资源和授权服务器

我在django rest框架和oauth2上开发了一个类似博客的项目。我现在正在尝试分离资源服务器和身份验证服务器,如下所示: 我已采取以下步骤: 按照文档中的说明设置身份验证服务器 将以下内容添加到auth服务器中的settings.py 按照文档中的说明设置资源服务器 将此添加到资源服务器中的settings.py: 我根据以下说明创建了资源\u服务器\u身份验证\u令牌: 总而言之,我为资源服务器创建了一个超级用户,然后使用管理站点向资源服务器添加了一个应用程序,为客户端类型选择机密,为

Django rest framework Django REST框架,从URL获取对象

我想知道是否有一种干净的方法可以使用django rest框架从其URL检索对象。当然应该有,因为使用HyperlinkedRelatedField时似乎发生了什么 例如,我将这个URL/api/comment/26作为一个字符串。在我看来,如何获得具有pk=26的注释实例 当然,我可以重做工作和工作的字符串,但它必须是一个更好的方式 非常感谢 编辑: 最后我就是这样解决的: resolve('/api/comment/26/')。func.cls.model将返回我的模型注释。 resolve

Django rest framework DRF如何在没有queruset的情况下调用api

我正在尝试在DRF中创建一个没有任何DB的RESTAPI。我希望用户使用post数据点击API。一旦系统接收到数据,我将执行另一个API调用并显示响应。我的代码是: 序列化程序.py class getCPHSerializers(serializers.Serializer): cph_id = serializers.CharField(max_length=128, write_only=True, required=True) views.py class GETCPHDeta

Django rest framework Django REST框架:验证GET请求参数?

我有一个用于/GET/请求的API端点,它接受一些必需的参数,如/resources/?bag\u id=11 bag\u id表示应用程序中的bag对象。 在我的场景中,这是我希望处理此呼叫的方式: 1) 如果url中没有提供bag_id,则会引发错误,说明“bag_id”是必需的参数 2) 如果提供了行李id,则检查是否存在用于此目的的行李对象,如果不存在,则引发错误,说明“未找到行李” 我想知道哪一个地方可能是处理这个问题的正确地点: 我应该重写list()并在那里或其他地方处理这些情况吗

Django rest framework 如何在django通道上使用令牌身份验证对websocket进行身份验证?

我们想为我们的WebSocket使用django通道,但我们也需要进行身份验证。我们有一个使用django rest framework运行的rest api,在那里我们使用令牌对用户进行身份验证,但django通道中似乎没有内置相同的功能。这个答案对通道1有效 您可以在此github问题中找到所有信息: 我将在这里总结讨论 将此mixin复制到您的项目中: 将装饰程序应用于ws\u connect 应用程序通过对django rest框架中的/auth token视图的早期身份验证请求接收

Django rest framework Django REST API:带参数的Queryset

伙计们:我正试图通过Django REST Framework和“url参数”获取数据库表中某个条目的详细信息。我正在使用以下代码获取“symbol”参数的值。然而,我在命令行上得到了与base\u name相关的运行时错误。以下是我的代码的详细信息: class ticker_detail_full_view(viewsets.ModelViewSet): serializer_class = ticker_detail_full def get_queryset(self)

Django rest framework 如何禁止同一来源访问,但允许严格的跨来源访问?

假设我有一台服务器abc:8080 以及一个向abc:8080.提出请求的网站web.org 我只想通过web.org访问abc:8080。。 未经允许的来源“web.org”,用户不得导航到abc:8080。 这可能吗 django cors headers的具体答案将非常棒 据我所知,您的abc:8080充当提供API的后端服务器,而web.org则是使用这些API的前端服务器 我假设您在abc:8080上安装了django cors头文件 将web.org添加到'abc:8080'项目中的

Django rest framework 当auth令牌不在标头中时,无法使用python social auth和django rest framework创建社交帐户

我使用python social auth和django rest框架允许用户在我的应用程序中注册他们的社交帐户 我的情况与这篇文章相似 我使用django rest框架的令牌身份验证来验证用户 在使用我的自定义用户模型时,当标题中有可用的authtoken(用户已登录)时,创建的社交用户帐户将链接到其令牌按预期附加到请求的用户,但如果没有可用的令牌,则无法创建新帐户 但是当使用默认的django用户模型时,一切都按预期进行。我怀疑我没有正确配置自定义用户模型 下面是我的设置文件,请你看看,看

Django rest framework 如何使用反向相关模型中的字段序列化-Django rest框架

我有一个api,它通过带有额外订单字段的多个模型检索与项目相关的所有项。我现在正尝试序列化带有订单值的项目 一种解决方案是通过模型序列化,但结果如下: { "order": 1, "item": { "id": 3031, "name": "Miami" } }, 我希望序列化该项,并获得如下输出: { "order": 1, "id": 3031, "name": "Miami" } 我无法将订单作为属性添加到

Django rest framework 自定义页面表示wagtail api中的嵌套图像字段

我们正在用WagtailAPI构建一个无头CMS。 我们的主模型变得非常长,以使表示更清晰,前端更容易访问, 我正在尝试将页面模型的不同字段分组到各个部分中 但我无法序列化嵌套的ImageField 这是我的页面模型: class LandingPage(Page): … introduction_headline= models.CharField() introduction_text = RichTextField() introduction_icon = models.ForeignK

Django rest framework 是否可以将查找表达式不为'的搜索筛选器与FillterSet筛选器相结合;确切的?

我想将搜索过滤器与没有git标准查找表达式的FIlterSet过滤器结合起来 我尝试为我的端点添加此配置: filter_backends = (filters.SearchFilter, DjangoFilterBackend) search_fields = ('username', 'full_name') filterset_fields = 'username', 它工作正常,但我需要在filterset\u字段中查找username 这是我的终点 class Use

Django rest framework 如何在django rest框架中处理多个slug

我如何才能访问像example.com//teams/这样的网站 当然,我的团队模型通过foreignkey指向公司,但当我将其添加到我的url.py中时,它会出错 path('<slug>/teams/<slug>', views.TeamDetail.as_view(), name="TeamDetail"), 所以我找到了一个解决方案,谢谢这个thx xyres 我将我的视图编辑为: class TeamDetail(RetrieveAPIView): a

Django rest framework 在DRF中创建post请求时如何限制字段?

我正在使用DRF制作一个POST api。在那个api中,我只需要几个字段名称、大小、客户名称、客户地址,但不需要这个字段status、ordered\u time,因为我想在运行时将这些字段保存为status='open'和ordered\u time=DateTimeField.now views.py models.py 序列化程序.py 但当我尝试创建订单时,它还需要状态和订购时间。但它应该在自动创建订单时保存。 建议一个好的方法 from rest_framework import v

Django rest framework 如何从Django Serializer中呈现默认值以用于图表绘制?

我正在使用Django Rest聚合一些数据,以便前端呈现(通过Chart.js) 假设我想要一张x轴上有月份(1-12月)和y轴上有总成本值的图表。如果找不到该月的值,我如何确保始终吐出所有12个月,并为y轴提供“0” 例如,来自Django rest的序列化数据缺少11月和12月的值,但我仍然需要这些标签才能正确呈现图表JS [ { "month": "2020-01-01", "total_cost&

  1    2   3   4   5   6  ... 下一页 最后一页 共 14 页