问题标签 [djoser]
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.
python - 具有另一个模型数组的 Django 自定义用户(像购物车一样)
这里是 Django、Django rest_framework 和 Djoser 的新手。
我正在构建您可以认为是一个简单的购物应用程序的后端(想想这个上的咖啡店)。目前,我在一个名为的应用程序中有一个自定义 User 模型authapp
,在另一个名为apiapp
. 我的目标是允许 User 对象拥有 0 无限数量的 Coffee 对象作为他们的购物车,并让该数据显示在用户端点中。
目前,我的用户模型如下所示models.py
:
在serializers.py
中,我有:
在管理仪表板中,我目前在编辑用户对象时看到了这一点(看起来您可以选择和取消选择我创建的任何/所有咖啡对象):
在所有用户端点,这就是我所看到的(它缺少咖啡对象数组):
这一切都给我留下了两个问题。
- 如何实现列表类型功能以在用户中保存 Coffee 项目?我希望能够添加尽可能多或尽可能少的一个 Coffee 对象。
- 如何使用 serializer.py 类在用户端点中显示咖啡对象数组?目前,
reactjs - Django,Djoser 社交身份验证:在服务器端会话数据中找不到状态。状态码 400
我正在用 django 实现一个身份验证系统并做出反应。这两个应用程序分别运行在 8000、3000 端口上。我已经使用 Djoser 包实现了身份验证系统。这个包使用了一些依赖项 social_core 和 social_django。一切似乎都配置好了。我单击登录 google 按钮...我被重定向到 google 登录页面,然后返回到端口 3000 上的前端反应应用程序,并带有url 上的状态和代码参数。
此时我将这些参数发布到后端。后端尝试使用以下代码(social_core/backends/oauth.py)验证状态,检查会话存储中是否存在状态键
此时由于某些原因,状态会话密钥不存在。我收到一条错误消息,指出在会话数据中找不到状态(以下错误)
我回顾了我所做的所有行动:
- 给定提供者 google-oauth2 一个重定向 url 来生成后端的前端请求。通过此操作,还会生成 url,状态键存储在具有特定值 (google-oauth2_state) 的会话中。
- 前端接收 url 并重定向到 google auth 页面。
- 使用 google 进行身份验证并使用 url 上的状态和代码参数重定向回前端。
- 前端获取数据形式的url,将数据post到后端,验证接收到的状态是否与点(1)上生成的状态相同。
由于某些原因,状态代码没有保留......任何想法和帮助将不胜感激。
谢谢大家。
django - 使用 Djoser 的 Django 用户配置文件样式身份验证
我正在尝试使用djoser实现身份验证。由于我在项目开始时没有扩展我AbstractBaseUser
的 from Django
,我决定使用一对一的配置文件关系模式。我有一个单独的用户应用程序,这是我的相关代码:
我在这里想做的是
django
User
只需向模型添加一个属性即可跳过迁移。- 扩展 Djoser 序列化程序以仅在创建步骤中创建关系。
但是当我尝试使用djoser endpoint (auth/users/create)
这样的主体创建具有发布请求的用户时:
我收到此错误:"User() got an unexpected keyword argument 'mobile_number'"
。对当前方法或更好方法的任何帮助都会很棒。
python - 如何将 Djoser 与多个扩展用户一起使用?
您好,我是 django django rest 框架和 djoser 的新手,我只是想知道。如何将 djoser 与多个扩展用户一起使用。下面是我的模型、序列化器和视图。我在互联网上真的找不到任何东西。Djoser 文档没有关于多个用户的任何内容。我应该只使用 Django Rest Framework 的内置令牌身份验证吗?
模型:我正在尝试使用学生模型和教师模型继承用户(如下所示)。我希望 djoser 使用这两个模型来创建用户。
序列化器:
我的序列化程序还没有完成,但我仍然需要重写 create 和 update 方法。
意见:
除了我的观点,我还必须为这些观点设置权限。
django - 如何覆盖 Djoser 基本端点用户/我
我对 Djoser 有点陌生,我想要做的是当经过身份验证的用户导航到它返回的users/me
API 端点时,它会返回用户 ID 电子邮件和名称。我希望它也返回自定义信息我该怎么做?
python - 尝试覆盖 djoser 序列化程序获取 AttributeError:尝试获取字段错误值时出现 AttributeError
我是 djoser 的新手,我是验证用户的用户。然后,我希望在user/me
访问时显示患者信息,但我将其覆盖以也显示患者详细信息,但出现此错误
错误
序列化器字段可能命名不正确,并且与UserProfile
实例上的任何属性或键都不匹配。原始异常文本为:“UserProfile”对象没有属性“blood_sugar_level”。
模型.py
序列化程序.py
视图.py
python - Django Djoser 令牌身份验证不起作用
TLDR:登录后如何以及在哪里获取用户的令牌,并将其作为标头传递给所有后续使用 Django/Djoser 的受限 URL?
我正在尝试使用 Djoser 创建用户登录/注册。在登录后的后端,我得到了身份验证令牌,但是当我尝试访问任何其他页面(例如 /users/me)时,它说:
我在网上查看,到处都说我需要在标题中传递身份验证令牌,但我看到的所有示例都使用 Postman 或 curl,他们只是将令牌复制并粘贴到标题部分。但我想在不知道令牌的情况下使用 Django 来完成它。
我已经看到使用token = request.META['HTTP_AUTHORIZATION']
它来获取令牌,但我不确定将它放在哪里,因为我所拥有的只是
在我的 urls.py 文件中,它应该为我处理所有事情,所以我的 views.py 或 models.py 中没有任何内容
然后将令牌值作为标头传递,我已经看到使用 Python requests 包:
但是再一次不知道该放在哪里。
在我的 settings.py 中,我有:
我也尝试过使用基本身份验证,但由于某种原因我永远无法注销。我要问的甚至可以从后端做吗?还是必须从客户端处理?如果是这样,我正在使用 Reactjs,但仍然不确定如何去做。
django - Django djoser 有两个相同的 url
我正在阅读有关 Django 的 Djoser 框架。
我发现有两个 url 模式要包含,它们都是相同的:
我以为 Django 总是拿第一场比赛
怎么可能选择第二条路径?
django-models - django user.save() 在 create_user 函数中不起作用
user.save() 没有运行。我尝试使用打印功能对其进行调试,发现“已保存用户”从未打印到终端,并且在向 API 发送发布请求时出现 404 错误。我使用 djoser API 进行身份验证。Djoser API 返回
POST /auth/users/
任何帮助将不胜感激。