Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/345.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Django:如何授予用户/组在指定时间段内查看模型实例的权限_Python_Django_Django Admin_Django Authentication_Django Permissions - Fatal编程技术网

Python Django:如何授予用户/组在指定时间段内查看模型实例的权限

Python Django:如何授予用户/组在指定时间段内查看模型实例的权限,python,django,django-admin,django-authentication,django-permissions,Python,Django,Django Admin,Django Authentication,Django Permissions,我是Django的新手,通过阅读文档或查看现有问题无法理解。我查看了Django权限和身份验证,但找不到解决方案 假设我有一个详细视图,列出了名为Item的模型的所有实例。对于每个项目,我想控制哪个用户可以查看它,以及查看时间。换句话说,对于每个有权访问该项目的用户,我希望查看该项目的权限在指定的时间段后过期。在这段时间之后,该项目将从列表中消失,用户无法访问详细说明该项目的url 我知道,实现的逻辑非常简单,但“每个用户/每个对象”部分让我感到困惑。非常感谢您的帮助 有关UserItemExp

我是Django的新手,通过阅读文档或查看现有问题无法理解。我查看了Django权限和身份验证,但找不到解决方案

假设我有一个详细视图,列出了名为Item的模型的所有实例。对于每个项目,我想控制哪个用户可以查看它,以及查看时间。换句话说,对于每个有权访问该项目的用户,我希望查看该项目的权限在指定的时间段后过期。在这段时间之后,该项目将从列表中消失,用户无法访问详细说明该项目的url


我知道,实现的逻辑非常简单,但“每个用户/每个对象”部分让我感到困惑。非常感谢您的帮助

有关UserItemExpiryDate的信息必须存储在单独的表(模型)中。我建议您使用Django中的编码

需要考虑的情况很少: 1) 创建了一个新用户,他/她应该有权访问项目。 在本例中,使用新的UserItem组合(作为键)和到期日期向UserItemExpirement添加条目。然后,对于已登录的用户,您将从将来在UserItemExpiration中包含UserItem的项目中查找项目。 2) 将创建一个新项目,并且必须将其添加到现有用户。 在这种情况下,您向UserItemExpirement添加条目,其中包含所有用户的新项目组合(作为键)和到期日期。“选择”有效项的逻辑与第1点相同

祝你好运, 拉德克·斯瓦克