问题标签 [django-users]

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.

0 投票
1 回答
408 浏览

django - Django:在一组用户之间隔离数据的提示

我想构建一个 Django 应用程序,其中每个“用户集”可以看到不同的数据,因为他们使用不同的数据库。有没有最佳实践来实现这一目标?

例如,用户A在登录后可以看到和管理自己的数据,而无法看到其他人的数据。

我可以使用 Django 多数据库功能来定义多个数据库并创建一个自动路由器以根据当前请求的用户指向正确的数据库(将 auth_user 保存在一个公共数据库上)。

最后一次机会,我可以为每个组创建一个不同的应用程序文件夹(唯一的区别是数据库名称),但我更喜欢更智能的解决方案。

0 投票
1 回答
1992 浏览

django - 注册表单未在 Django 中提交

我正在使用具有覆盖保存方法的表单在 django 中进行注册。我没有任何错误,但没有提交表格。以下是我的代码:Models.py:

表格.py

视图.py

模板文件(register.html):

提交表单后,它不再显示除了表单之外的任何内容。在 db 中没有插入新记录,我还从管理面板中检查了它。

我想知道可能是什么问题,因为每件事看起来都很好。有什么好的方法来调试问题吗?诸如 pprint 之类的东西,但是在这种情况下在哪里以及如何调试?

0 投票
1 回答
1387 浏览

django - django 配置文件创建,在使用多种配置文件类型时设置用户配置文件

我被困在用户注册上,我实际上打算拥有不同的个人资料类型。注册时,我无法在创建用户时设置 UserProfile。我正在使用 UserCreationForm。我的文件中的代码如下。

帐户/模型.py

视图.py

由于我正在使用多个配置文件,因此以下是其中一个配置文件的 models.py 的代码:

我在 settings.py 中的个人资料身份验证

这是我在查看其他地方后使用的文件 profile.py: from accounts.models import UserProfile from accounts.forms import UserProfileForm from person.models import Person from company.models import Company

我是新手,很困惑,也看过文档。还在 stackoverflow.com 上看到了其他解决方案,但没有找到任何解决我的问题的方法。因此,请告诉您是否发现任何对我有帮助的东西。这似乎不是一个大问题,但由于我是新手,所以这对我来说是个问题。

0 投票
1 回答
293 浏览

django - 如果 django 视图在另一个用户登录时对用户名执行 User.get,用户上下文是否丢失?

我有一个教师/学生 django 应用程序。当老师登录并想查看学生的进度时,这就是我正在做的事情:

  1. 教师已登录并且是 request.user。她请求用户名为“mystudent”的学生报告
  2. studentuser = get_object_or_404(用户,用户名='mystudent')
  3. 然后它继续检索该学生的数据以将其显示给教师

在我的模板中,我有:

教师:{{ user.username }}
学生信息:

我得到了正确的学生信息,但我没有看到教师的用户名。我的模板还具有基于用户是否登录的导航,对于此页面,我获得了导航栏的 not_logged_in 视图。

但是,现在如果我浏览其他页面,这些页面也显示教师:{{ user.username }},则会看到用户名,并显示登录的导航栏。

因此,尽管实际用户登录名(教师)是有效并保留的,但这只是与用户混淆的一个模板。

有人可以解释这里出了什么问题吗?

0 投票
1 回答
450 浏览

django - 如何检查 django 中的用户组是否更改?

我在我的处理程序中放置了一个断点,由以下方式调用:

在 pdb 中:

和:

此时似乎没有显示更改。但这很可能是这种情况,因为我正在进行数据库查询以获取组。还有其他地方可以拦截用户模型的更新吗?

或者也许这些实例字段之一会给我答案?这些干净的方法/字段似乎都不包含任何有用的东西。

0 投票
7 回答
33178 浏览

python - request.user 返回一个 SimpleLazyObject,我如何“唤醒”它?

我有以下方法:

从视图中调用:

如您所见, _attempt 方法期望 actor 是 type django.contrib.auth.models.User,但对象似乎是 type django.utils.functional.SimpleLazyObject。为什么会这样?更重要的是,如何将LazyObject(显然是用户对象的一种包装器)转换为User对象?

更多信息Request.user可在此处获得:https ://docs.djangoproject.com/en/dev/ref/request-response/#django.http.HttpRequest.user该文档似乎表明request.user应该是一个User对象...

======后期编辑=====

我现在有以下方法:

我正在传递一个用户,但是if条件仍然是 true,actor 仍然是LazyObject. 为什么会这样?

0 投票
1 回答
2009 浏览

django - Django + Wordpress:集成用户登录

我希望有一个用户系统(最好是 Django 的)来统治 Django 和 Wordpress。

用例是 Django 是嵌入在 wordpress 安装中的应用程序(通过 iframe 或类似的东西)。为了使用 Django,用户必须经过身份验证,WordPress 中的身份验证不是强制性的,但建议使用(用于发布评论和类似的东西)。

为了方便网站的使用,我希望使用相同的注册来申请 Django 应用程序和 WordPress 安装。注册可能通过 OAuth / FB 身份验证(为此有很多 Django 解决方案)或通过专用站点用户进行。虽然注册过程是最重要的,但如果某些用户字段在两个世界之间保持同步,那就太好了。

我对此事的看法:

  • 也许有一个开箱即用的解决方案(找不到任何解决方案)
  • 通过以下选项之一创建一个成熟的 django 应用程序,用于同步两个用户模型(wp_users 和 django 的用户):
    • 一个 master(django)-slave(wp) 解决方案,其中 Django 中的每次更改都会更改 wp_users 和其他相关表中的信息,反之亦然(通过 Django 定期检查 DB 或创建 WP 插件)。可以通过将 django 和 wp 放在同一个(MySQL)数据库上,使用 XML-RPC 或我没有想到的其他命名来实现。
    • 与上面相同,但让 WP 成为主人而不是 Django(似乎更难)。
    • 一个管理两个模型的外部系统——也许强制 OAuth / 其他一些外部身份验证,并使用它以某种方式同步两个模型?

有没有人遇到过这种情况?任何建议将不胜感激。

0 投票
2 回答
9041 浏览

django - 用户管理器方法 create() 和 create_user()

我遇到了对象管理器create()方法的一些可疑行为。如果您使用此方法,则创建对象似乎User不需要password字段。User结果你得到User了空白password。如果您使用create_user方法并且未指定password它会User使用不可用的密码创建(通过 to set_unusable_password())。

我不确定为什么当您尝试在没有的情况下创建用户时create()方法不会- 在文档中指定此字段是必需的。方法/文档有问题吗?raise exceptionpasswordcreate()

0 投票
1 回答
161 浏览

django - Django重定向快捷方式更改request.user

我有一个应用程序,我们将 Django 'User' 对象细分为具有附加属性的 'AppAccount' 对象。现在我有一个视图,我可以在其中执行以下操作:

现在根据pdb,request.user是调用AppAccount后的一个实例,但在 的第一行是一个 Django User 实例。login()request.usersomeOtherView

为什么重定向调用将用户对象更改回普通的 Django 用户?我怎样才能避免这种情况?

另外,上面的代码正确吗?添加backend属性是否可以绕过对 的调用authenticate?如果不是,那么正确的方法应该是什么:我想自动登录用户,没有他们的凭据,然后重定向到另一个由@login_required装饰器包装的视图。

谢谢。

0 投票
1 回答
2466 浏览

django - 根据其他字段在Django的用户模型中自动创建用户名

我一直在寻找最佳实践,但没有找到。我什至找不到其他人需要使用的解决方案。

我需要根据他的其他数据(名字和姓氏)生成用户的用户名,可选地在末尾附加整数,直到我得到唯一的用户名。

我非常喜欢在模型中这样做。有没有一些标准的方法来做到这一点?还是只适合形式?我一直在研究各种User模型方法以及信号的重载,但没有找到可以添加它的合适位置。