我想檢查用戶是否屬於'onetime'
組或'monthtime'
組在views.py,以便他們可以發佈帖子。我使用不屬於任何兩個組的用戶帳戶提交了表單,但我能夠成功提交帖子。相反,它應該告訴我,我沒有資格。檢查用戶是否屬於一個組在視圖
Models.py
class Emov(models.Model):
user=models.ForeignKey(User)
name=models.CharField(max_length=10)
#otherfields
views.py
def e_hit(request):
if request.method=="POST":
form=EmovForm(request.POST, request.FILES)
if form.is_valid():
one=Group.objects.filter(name='onetime')
month=Group.objects.filter(name='monthtime')
if request.user in one or month:
data=form.cleaned_data
newesell=Emov(
user=request.user,
pub_date=datetime.datetime.now(),
name=data['name'])
newpos.save()
return HttpResponseRedirect('/approval/')
else:
return HttpResponse('You are not eligible')
else:
return HttpResponse('Fill the form')
else:
return render_to_response('post.html',{'EmovForm':EmovForm},context_instance=RequestContext(request))
感謝您的編輯@jschoen。 –
感謝它的工作!如果我想在發佈後立即在「一次性」組中刪除用戶,那該怎麼辦?就像在newpos.save() – picomon
那麼,那真是一個不同的問題。我不確定'auth.groups'是你想要處理這個問題的方式,但也許是這樣。 'g = Group.objects.get(name ='onetime') g.user_set.remove(request.user)'。 –