我正在开发一个带有React前端的Django Rest Framework B2B应用程序。数据从csv馈送,然后在React中呈现Analytics仪表板。每个账号(“用户”)都是一家公司--在公司内部,整个营销团队(比方说)都在使用这款应用。每个公司帐户都有该公司独有的数据。以及该公司独有的仪表板首选项。管理员是代表公司拥有编辑/管理员权限的公司经理/员工(例如,波音、耐克等)的人类用户。该"admin“对仪表板首选项进行了一些更改,并希望”发布“更改,以便公司帐户的其他员工(营销团队的其他成员)可以查看更新后的仪表板。但可能还没有,因此有了“保存草稿”功能。
我不确定如何在Django (DRF)中以最行业标准的方式获得这两个功能-当我点击“发布”时,整个营销团队应该能够看到这些变化。(这是一个B2B应用程序)。但当我保存草稿时,我应该能够查看更改(以管理员身份),但不能查看营销团队的其他成员。如果有任何帮助,我将不胜感激。谢谢!
发布于 2021-10-05 13:08:55
控制面板您可以使用选择字段来管理模型(在本例中为)的状态
示例代码如下
models.py
class Dasboard(models.Model):
STATUS_CHOICES = (('draft', 'Save Draft'), ('published', 'Published'))
status = models.Charfield(max_length=20, choices=STATUS_CHOICES)
# Others models fieldsviews.py
def dashboard(request):
objects = None
if request.user.is_admin:
# The admin users can see draft and saved (all Dashboard objects)
objects = Dashboard.objects.all()
else:
# Others users are seeing only published
objects = Dashboard.objects.filter(status='published')
return render(request, 'app_name/dashboard.html', {'objects': objects})Django NB :在这里,我只使用了的filter特性来根据用户类型检索一些数据。但您也可以使用Django permissions进行更高级的处理。
https://stackoverflow.com/questions/69450651
复制相似问题