问题标签 [django-rest-viewsets]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
django - 缺少 1 个必需的位置参数:'request' django restframework
我正在使用路由器创建 url 现在我想为我的 api 创建 url,但问题是,我收到错误
createuser() 缺少 1 个必需的位置参数:'request'缺少 1 个必需的位置参数:'request'
我在 UserAuthAPIView 类中的所有方法都遇到了相同的错误,我已经阅读了有关 stackoverflow 的解决方案,但在我的情况下它们不起作用。
我在 UserAuthAPIView 类中有很多方法,我想为所有这些方法创建 url。
例如
网址.py
视图.py
django - Django Rest Framework验证方法不起作用
这是我在 Rest Framework 中执行的第一项任务。我参考了一个视频教程来执行此操作,这很奇怪,即使我完全复制了视频中的代码,我在序列化程序中的验证方法也不起作用。下面是我的视图功能:
和我的序列化器:
类 UserLoginSerializer(ModelSerializer):
作为 validate 方法的第一行没有被执行,我如何得到响应(200_OK)?请在这件事上给予我帮助..
django - 比较不同模型的实例 - Django REST Framework
我只是在寻找我(似乎很愚蠢)问题的答案。我已经看过一些 stackoverflow 帖子,但其中任何一个都有帮助:(
我的问题是如何比较不同模型的两个实例?
这是我的情况:
我有两个模型:产品和连接器。首先包括 id(pk)、name 等。另一个包括 id(pk)、productId(fk)、userId(fk) 等。
我的目标是准备仅列出连接器数据库表中的产品作为产品(fk)的视图。
问题是 Django 将“product.id”和“connector.productId”视为完全不同的类型。第一个是“core.models.ProductModel”,第二个是“core.models.ConnectorModel”。我试图使用 int() 解析它,但它会产生错误。
如何比较这两个值以将对象添加到 productListToDisplay 数组?
(我看到了django doc - 比较对象,但对于这种情况没有有用的信息)
django - 注册你的 Django 路由器
在route.register
没有base_name
喜欢的情况下使用的时候;
route.register(r'codes', SmsCodeViewset)
发生错误;
AssertionError: basename argument not specified, and could not automatically determine the name from the viewset, as it does not have a .queryset attribute.
我用route.register(r'codes', SmsCodeViewset, bose_name="")
的时候没有报错,请问为什么?
django - Django Rest Framework模型视图集 - 在创建之前更新字段
我有一个模型视图集:
和一个序列化器:
这些是 POST 到视图集的字段,但它们不足以完全填充对象,因此我需要添加更多字段。
我尝试过覆盖序列化程序,如下所示:
然而,这永远不会被调用(通过在 create 函数中粘贴 print 语句进行测试 - 它永远不会运行)。显然这是因为这个问题:Django Rest Framework 序列化程序 create() 没有被触发这解释了这个问题,但不是如何解决我的问题。
我不确定是否需要重写序列化程序的 is_valid 函数、序列化程序的 create 函数或视图集的 create 函数,或者其他什么。
django - 使用 Django RF API 创建具有多对多字段的对象的最佳方法
我开始了一个项目,其想法超出了我的理解范围,但是嘿……我们中的一些人以愚蠢的方式学习对吗?
目前有 2 个模型:User
使用AbstractUser
类的模型,然后我有一个Role
模型,它提供了许多可能随时间变化的角色,所以我需要它是动态的。
这就是我的api/models.py
样子:
我遇到了几个问题,但目前当我使用邮递员或 DRF API 视图时,我无法创建有角色或没有角色的用户。
尝试角色:
尝试无角色:
现在,我知道我必须先创建用户然后分配角色,但是,我似乎无法通过 API 找到方法。
这是我的UserSerializer
课:
我已经看到了创建form.py
文件和添加保存方法的建议,但我不确定它是否适用,因为这将严格地作为我的后端的 API,并将为我的前端实现 AngularJS。
此外,每当我尝试在序列化程序下保存或更新用户时,User.roles.id
都会返回一个用户没有名为角色的属性...
所以我希望有人可以提供帮助。谢谢。
django - 基于外键用户字段的Django Rest Framework ViewSet过滤问题
我有一个正在处理的 django 项目。这个项目有两个模型。有一个user
和account
模型。我正在集成 django rest 框架视图集。我将在下面包括它们。我现在正在项目中集成 Django Rest Framework。我试图弄清楚如何做两件事。
2个型号:
默认django用户
账户模式:
1 => 我希望能够输入端点/api/users/accounts/omarjandlai
并使用 omarjandali 用户外键获取单个或多个帐户
2 => 我希望能够输入以下内容
api/users/accounts/
并返回数据库中的所有帐户
我尝试了 4 - 5 种不同的方法来让它工作,但我无法让它工作。
这是我的序列化程序和视图
序列化器:
意见:
发生的事情是当我做
api/users/account
我看到所有的帐户
api/users/account/omarjandali
我明白了detail not found
网址:
django - 如何在 Django 休息框架路由器中修复此 NoReverseMatch 异常?
我正在研究这个 Django 项目以进行学习,但我无法使用 reverse() 解析 URL。
我试图从在线文档中理解这个概念,但我无法成功。
我ModelViewSet
在views.py中使用
在我的tests.py
这是我的 urls.py 帖子(即应用程序)
这是我在根目录下的 urls.py
这是我得到的错误
也有人可以建议一个很好的地方来正确理解 reverse() 和路由器如何一起工作..
django-rest-framework - 如何在 perform_create 视图集中添加用户(django rest 框架)?
我想做一个“评论”表。在表上,将有一个包含创建评论的 user_id 的字段。与评论表相关的用户来自 Django 默认用户模型。这是评论模型:
这是评论序列化程序:
这是创建新评论的视图集:
我还将用户与 django rest jwt 集成以进行授权。这是我发送到 API 的标头和数据。
标题:
授权:不记名{jwt token}
内容类型:应用程序/json
身体:
{ "content": "这是评论" }
但我得到了这个回应:
{ "user": [ "此字段为必填项。" ] }
如何修复序列化程序,以便从令牌(request.user)中检索用户?
django - 路由器和视图集如何配置它们的 url?
我正在阅读一段很长的代码。并且被困在路由器和视图集如何自动配置它们的 URL 上。例如。views.py 文件是:
与路由器对应的url是:
在上述情况下,视图集中不同操作的相应 url 是什么,即列表、创建、检索、更新、部分更新和销毁,如视图集的 djangorestframework 文档中所述:http ://www.tomchristie.com/rest -framework-2-docs/api-guide/viewsets