django - 如何过滤由另一个超级用户创建的用户以便它可以发送通知
问题描述
在我的 forms.py
class NoticeFormWarden(forms.ModelForm):
class Meta:
model = Noticee
fields = ('name','description','users','file',)
def save(self,user):
owner = user
issue_date = datetime.datetime.now().strftime("%Y-%m-%d")
name = self.cleaned_data['name']
description = self.cleaned_data['description']
users = self.cleaned_data['users']
file = self.cleaned_data['file']
Noticee.objects.create(name=name, description=description, users=users, file=file, owner=owner, issue_date=issue_date)
def __init__(self, users, *args, **kwargs):
super(NoticeFormWarden, self).__init__(*args, **kwargs)
self.fields['users'].queryset = User.objects.filter(is_hostelstaff=True)
self.fields['name'].widget.attrs['placeholder'] = ' Subject'
self.fields['file'].widget.attrs['placeholder'] = ' Subject'
self.fields['description'].widget.attrs['placeholder'] = 'write your msg here . . .'
self.helper = FormHelper()
self.helper.form_show_labels = False
在views.py中
def WardenCreateNotice(request):
form = NoticeFormWarden(request.user, request.POST or None)
if request.method == 'POST':
if form.is_valid():
print('Saved notice')
form.save(request.user)
form = NoticeFormWarden(request.user)
return redirect("warden_view:notice-warden2")
context = {
'form': form,
'user': request.user,
}
return render(request, 'warden_view/notice.html',context)
我有四种类型的用户:admin、warden、staff、student
管理员创建守望者
典狱长创建员工
员工创造学生
现在我想发送通知,以便:
管理员向监狱长发送通知
典狱长向他们创建的员工发送通知
请注意,一个监狱长有很多员工,它可以向唯一的员工发送通知
如何过滤特定的典狱长创建的员工?
解决方案
推荐阅读
- facebook-messenger - 自定义有效负载不适用于 Messenger
- pandas - Pandas to_csv 导致额外的行
- mysql - 插入表格(从另一个表格中选择)和一些参数
- javascript - 使用 JavaScript API v2 查询 1 个文档的 Cosmos DB 查询
- javascript - 使用 fetch 读取 JSON 格式的文件
- ios - 获取用户位置的MKAnnotationView
- c - 无法从函数返回字符指针
- javascript - 为什么用大括号括起来的参数列表返回最后一个参数?
- java - JavaFX AnimationTimer 每秒执行超过 60 次更新
- android - [15.0.1,15.0.1] 的其他各种库正在请求库 com.google.android.gms:play-services-base,但解析为 16.0.1