def app_del(request, app_id):
try:
App.objects.get(pk=app_id).delete()
messages.add_message(request, messages.SUCCESS, '????')
except App.DoesNotExist:
messages.add_message(request, messages.ERROR, '??????????')
return HttpResponseRedirect(reverse('app:app_list'))
python类HttpResponseRedirect()的实例源码
def registry(request):
if request.method == 'POST':
form = UserRegistryForm(request.POST)
message_error = True
msg = '??????'
if form.is_valid():
cd = form.cleaned_data
# ????????
if cd['users_password1'] == cd['users_password2'] and len(cd['users_password1']) < 6:
msg = '?????????????6?!'
else:
user = Users.objects.filter(users_name=cd['users_name'])
if not user:
m2 = hashlib.md5()
m2.update(cd['users_password1'])
Users(users_name=cd['users_name'],
users_password=m2.hexdigest(), users_create_time=datetime.now(),
users_last_login=datetime.now(), users_otp=pyotp.random_base32()).save()
msg = '????'
message_error = False
else:
msg = '????: ????????!'
if message_error:
messages.add_message(request, messages.ERROR, msg)
return HttpResponseRedirect(reverse('users:user_registry'))
else:
messages.add_message(request, messages.SUCCESS, msg)
return HttpResponseRedirect(reverse('nav'))
else:
return render_to_response('users/register.html', {}, context_instance=RequestContext(request))
def user_del(request, users_name):
if users_name:
try:
users = Users.objects.get(users_name=users_name)
msg = '???????'
messages.add_message(request, messages.SUCCESS, msg)
users.delete()
except Users.DoesNotExist:
msg = '??????'
messages.add_message(request, messages.SUCCESS, msg)
return HttpResponseRedirect(reverse('users:user_list'))
def policy_del(request, policy_id):
try:
p = Policy.objects.get(pk=policy_id)
# del rule
PolicyRule.objects.filter(rule_policy=p.policy_id).delete()
p.delete()
messages.add_message(request, messages.SUCCESS, '??????')
except Policy.DoesNotExist:
messages.add_message(request, messages.ERROR, '??????????')
return HttpResponseRedirect(reverse('policy:policy_list'))
def policy_disable(request, policy_id):
try:
p = Policy.objects.get(pk=policy_id)
p.policy_active = 2
p.save()
messages.add_message(request, messages.SUCCESS, '??????')
except Policy.DoesNotExist:
messages.add_message(request, messages.ERROR, '??????????')
return HttpResponseRedirect(reverse('policy:policy_list'))
def policy_active(request, policy_id):
try:
p = Policy.objects.get(pk=policy_id)
p.policy_active = 1
p.save()
messages.add_message(request, messages.SUCCESS, '??????')
except Policy.DoesNotExist:
messages.add_message(request, messages.ERROR, '??????????')
return HttpResponseRedirect(reverse('policy:policy_list'))
def logout_view(request):
logout(request)
return HttpResponseRedirect('/accounts/login/')
def acc_logout(request):
logout(request)
return HttpResponseRedirect("/login")
def acc_logout(request):
logout(request)
return HttpResponseRedirect('/')
def acc_login(request):
if request.method == 'GET': # ???GET?????????
return render(request, 'login.html', locals())
elif request.method == 'POST':
username = request.POST['username']
password = request.POST['password']
user = authenticate(username=username, password=password) # ???????????user??????None
if user:
login(request, user) # ??????user???request
# print(request)
return HttpResponseRedirect('/')
else:
login_err = 'Username or Password error!'
return render(request, 'login.html', locals()) # ???????????
def search(request):
""" Search view """
if "q" in request.GET:
queries = request.GET['q'].split()
projects = []
for q in queries:
projects.extend(list(Project.objects.filter(
Q(name__icontains=q) |
Q(description__icontains=q) |
Q(short_description__icontains=q))))
for lang in Language.objects.filter(name__icontains=q):
for project in lang.project_set.all():
projects.append(project)
for platform in Platform.objects.filter(name__icontains=q):
for project in platform.project_set.all():
projects.append(project)
try:
# If a number is given, include the project with that ID if any
q = int(q)
projects.append(Project.objects.get(id=q))
except:
pass
projects = set(projects)
context = {
'projects': list(projects),
}
return render(request, 'search_page.html', context)
else:
return HttpResponseRedirect("/")
def login_user(request):
if request.method == "POST":
username = request.POST['username']
password = request.POST['password']
user = authenticate(username=username, password=password)
if user is not None:
if user.is_active:
login(request, user)
return HttpResponseRedirect(reverse('calendar'))
else:
return render(request, 'login/login.html', {'error_message': 'Your account has been disabled'})
else:
return render(request, 'login/login.html', {'error_message': 'Invalid login'})
return render(request, 'login/login.html')
def search(request):
""" Search view """
if "q" in request.GET:
queries = request.GET['q'].split()
projects = []
for q in queries:
projects.extend(list(Project.objects.filter(
Q(name__icontains=q) |
Q(description__icontains=q) |
Q(short_description__icontains=q))))
for lang in Language.objects.filter(name__icontains=q):
for project in lang.project_set.all():
projects.append(project)
for platform in Platform.objects.filter(name__icontains=q):
for project in platform.project_set.all():
projects.append(project)
try:
# If a number is given, include the project with that ID if any
q = int(q)
projects.append(Project.objects.get(id=q))
except:
pass
projects = set(projects)
context = {
'projects': list(projects),
}
return render(request, 'search_page.html', context)
else:
return HttpResponseRedirect("/")
def register(request):
obj_R = RegisterForm()
retR = {'dataR':None,'errorR':''}
retR['dataR'] = obj_R
if request.method == 'POST':
checkform = RegisterForm(request.POST)
checkresult = checkform.is_valid()
if checkresult:
Addr = request.META['REMOTE_ADDR']
Agent = request.META['HTTP_USER_AGENT']
Register_date = str(time.strftime("%Y-%m-%d %H:%M:%S",time.localtime()))
#print request.POST
Username = request.POST.get('username','')
Password = request.POST.get('password','')
Email = request.POST.get('email','')
Phone = request.POST.get('phone','')
G = models.UserGroup.objects.get(gname="user")
key = 48
result = models.UserInfo.objects.create(username = Username,password = encrypt(key, Password),email = Email,phone = Phone,ip = Addr,agent = Agent,register_date = Register_date,permiss = G )
if result:
return HttpResponseRedirect('/')
else:
raise Http404("Register is fail")
else:
errorMsg = checkform.errors
firstErrorMsg = checkform.errors.as_data().values()[0][0].messages[0]
retR['errorR'] = firstErrorMsg
return render_to_response('user/register_index.html', retR)
def auth_fail_handler(request):
return HttpResponseRedirect("/")
#password add encrypt
def get(self, request):
return HttpResponseRedirect(FB_CLIENT.redirect_url)
def notice_delete(request, notice_id):
if request.method == 'GET':
try:
notice = Notice.objects.get(id=notice_id)
except Notice.DoesNotExist:
raise Http404
notice.is_deleted = True
notice.save()
return HttpResponseRedirect(reverse("bbs:notice"))
def unfav_topic(request, topic_id):
if request.method == "GET":
return HttpResponseRedirect(reverse("bbs:index"))
try:
topic = Topic.objects.get(pk=topic_id)
faved_topic = FavoritedTopic.objects.filter(user=request.user, topic=topic)
faved_topic.delete()
except Topic.DoesNotExist:
messages.error(request, u"?????")
return HttpResponseRedirect(reverse("bbs:index"))
return HttpResponseRedirect(reverse("bbs:topic", args=(topic_id,)))
def appowner_del(request):
appowner_id = request.GET.get('id', '')
if appowner_id:
AppOwner.objects.filter(id=appowner_id).delete()
appowner_id_all = str(request.POST.get('appowner_id_all', ''))
if appowner_id_all:
for appowner_id in appowner_id_all.split(','):
AppOwner.objects.filter(id=appowner_id).delete()
return HttpResponseRedirect(reverse('appowner_list'))
def project_del(request):
project_id = request.GET.get('project_id', '')
if project_id:
Project.objects.filter(id=project_id).delete()
project_id_all = str(request.POST.get('project_id_all', ''))
if project_id_all:
for project_id in project_id_all.split(','):
Project.objects.filter(id=project_id).delete()
return HttpResponseRedirect(reverse('project_list'))