pic*_*mon 0 python django django-views
我想检查用户是否属于views.py中的'onetime'组或'monthtime'组,以便他们可以发布帖子.我使用不属于这两个组中的任何一个的用户帐户提交了表单,但我能够成功提交帖子.相反,它应该告诉我,我没有资格.
Models.py
class Emov(models.Model):
user=models.ForeignKey(User)
name=models.CharField(max_length=10)
#otherfields
Run Code Online (Sandbox Code Playgroud)
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))
Run Code Online (Sandbox Code Playgroud)
Rob*_*b L 10
试试这个,这可以节省你对数据库的一些点击,并且更具可读性:
request.user.groups.filter(name__in=['onetime','monthtime']).exists()
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4554 次 |
| 最近记录: |