def login_view(request): form = LoginForm(request.POST) if form.is_valid(): telephone = form.cleaned_data.get('telephone') password = form.cleaned_data.get('password') remember = form.cleaned_data.get('remember') # 判断用户是否存在 user = authenticate(request, telephone=telephone, password=password) if user: if user.is_active: login(request, user) if remember: # 使用默认过期时间,默认为两周 request.session.set_expiry(None) else: # 浏览器关闭时过期 request.session.set_expiry(0) return restful.ok() else: return restful.unauth(message="您的账号被冻结了") else: return restful.params_error(message='账号或密码错误') else: errors = form.get_errors() return restful.unauth(message=errors)
def post(self, request): form = LoginForm(request.POST) if form.is_valid(): telephone = form.cleaned_data.get('telephone') username = form.cleaned_data.get('username') password = form.cleaned_data.get('password') remember = form.cleaned_data.get('remember') # user = authenticate(request, telephone=telephone, password=password) user = User.objects.filter(username=username, telephone=telephone).first() checked = user.check_password(password) if checked: if user.is_active: login(request, user) if remember: request.session.set_expiry(None) else: request.session.set_expiry(0) return restful.ok() else: return restful.unauth(message='你已经被拉黑了!') else: return restful.unauth(message='账号或密码错误') else: errors = form.get_errors() return restful.params_error(data=errors)
def news_category_delete(request): pk = request.POST.get('pk') try: NewsCategory.objects.filter(pk=pk).delete() return restful.ok() except: restful.unauth(message='该分类不存在!')
def login_view(request): form = LoginForm(request.POST) if form.is_valid(): telephone = form.cleaned_data.get('telephone') password = form.cleaned_data.get('password') remember = form.cleaned_data.get('remember') user = authenticate(request, username=telephone, password=password) if user: if user.is_active: login(request, user) if remember: request.session.set_expiry(None) else: request.session.set_expiry(0) return restful.ok() else: return restful.unauth(message="account has been frozen") # JsonResponse({'code': 401, 'message': "account has been frozen", 'data': {}}) else: return restful.params_error( message="user not exist, please register first") # JsonResponse({'code': 400, 'message': "user not exist, please register first", 'data': {}}) else: errors = form.get_errors() return restful.params_error(message=errors)
def delete_news_category(request): pk = request.POST.get('pk') try: NewsCategory.objects.filter(pk=pk).delete() return restful.ok() except: return restful.unauth(message='Category not exists!')
def login_view(request): form = LoginForm(request.POST) if form.is_valid(): telephone = form.cleaned_data.get('telephone') password = form.cleaned_data.get('password') remember = form.cleaned_data.get('remember') user = authenticate(request, username=telephone, password=password) if user: if user.is_active: login(request, user) if remember: # 设置默认过期时间(2周) request.session.set_expiry(None) else: # 浏览器关闭后过期 request.session.set_expiry(0) # 返回给前端的Json数据 return restful.ok() else: return restful.unauth(message="您的账号已经被冻结了!") else: return restful.params_error(message="手机号码或密码错误!") else: errors = form.get_errors() return restful.params_error(message=errors)
def delete_news_category(request): pk = request.POST.get("pk") try: NewsCategory.objects.filter(pk=pk).delete() return restful.ok() except: return restful.unauth(message="该分类不存在!")
def login_view(request): '''登陆''' form = LoginForm(request.POST) if form.is_valid(): email = form.cleaned_data.get('email') password = form.cleaned_data.get('password') remember = form.cleaned_data.get('remember') user = authenticate(request, username=email, password=password) if user: if user.is_active: log = login(request, user) if remember: request.session.set_expiry(None) else: request.session.set_expiry(0) return restful.ok() else: return restful.unauth(message="该账号已被冻结") else: return restful.params_error(message='邮箱或者密码错误') else: errors = form.get_errors() return restful.params_error(message=errors)
def delete_products_category(request): pk = request.POST.get('pk') try: ProductCategory.objects.filter(pk=pk).delete() return restful.ok() except: return restful.unauth(message='该分类不存在!')
def delete_article_category(request): pk = request.POST.get('pk') try: ArticleCategory.objects.filter(pk=pk).delete() return restful.ok() except: return restful.unauth(message='该分类不存在')
def login_view(request): #需要一个表单对数据进行验证 #导入表单使用表单做验证 form = LoginForm(request.POST) if form.is_valid(): #如果验证成功,拿到数据 telephone = form.cleaned_data.get('telephone') password = form.cleaned_data.get('password') remember = form.cleaned_data.get('remember') user = authenticate(request,username = telephone,password=password) if user: #验证成功后判断 is_active看该用户是否可用 if user.is_active: login(request,user) if remember: request.session.set_expiry(None) else: request.session.set_expiry(0) return restful.ok() else: return restful.unauth(message="您的账号已经被冻结") else: return restful.paramserror(message="手机号码或者密码错误") else: errors = form.get_errors() return restful.paramserror(message=errors)
def login_view(request): #创建表单实例 form = LoginForm(request.POST) #验证表单信息,并且获取表单内容 if form.is_valid(): telephone = form.cleaned_data.get('telephone') password = form.cleaned_data.get('password') remember = form.cleaned_data.get('remember') #使用django自带authenticate方法,验证登录,正确返回user对象,不正确返回None user = authenticate(request, username=telephone, password=password) #登录成功后继续执行 if user: #判断是否进入黑名单 if user.is_active: #使用login方法保持会话状态 login(request, user) #如果用户选择记住密码,设置过期时间为默认的两周,否则浏览器关闭即过期 if remember: request.session.set_expiry(None) else: request.session.set_expiry(0) #登录返回json数据,登录成功返回200,使用通用格式 return restful.result() else: #如果是黑名单,则返回405 表示没有权限,或者是其他错误 return restful.unauth(message="没有权限") else: #验证失败,登录信息错误 return restful.params_error(message="手机号或者密码错误!") else: #表单验证错误 errors = form.get_errors() return restful.params_error(message=errors)
def login_view(request): # 接收数据,验证 # 只需要处理post请求就可以了。 form = LoginForm(request.POST) if form.is_valid(): telephone = form.cleaned_data.get('telephone') password = form.cleaned_data.get('password') remember = form.cleaned_data.get('remember') user = authenticate(request, username=telephone, password=password) if user: if user.is_active: # 登录 login(request, user) if remember: # None,默认的过期时间,2周 request.session.set_expiry(None) else: # 浏览器关闭,立即过期 request.session.set_expiry(0) # message,有没有数据都传,避免前端进行判断 return restful.ok() else: # 用户被拉黑 return restful.unauth(message="账号被冻结,未授权") else: return restful.params_error(message="手机号码或密码错误") else: errors = form.get_errors() return restful.params_error(message=errors)
def post(self, request): # 用户登陆验证 form = LoginForm(request.POST) # 表单验证 if form.is_valid(): telephone = form.cleaned_data.get('telephone') password = form.cleaned_data.get('password') remember = form.cleaned_data.get('remember') # 调用django验证方法,验证用户 user = authenticate(request, username=telephone, password=password) # 验证用户 if user: # 是否激活 if user.is_active: login(request, user) if remember: # 设置session request.session.set_expiry(None) else: request.session.set_expiry(0) return restful.ok() else: return restful.unauth(message='权限不足') else: return restful.params_error(message='手机号或密码错误') else: errors = form.get_errors() return restful.params_error(message=errors)
def login_view(request): form = LoginForm(request.POST) if form.is_valid(): telephone = form.cleaned_data.get('telephone') password = form.cleaned_data.get('password') remember = form.cleaned_data.get('remember') user1 = authenticate(request, telephone=telephone, password=password) #验证是否存在该用户 if user1: if user1.is_active: login(request, user1) if remember: request.session.set_expiry(None) else: request.session.set_expiry(0) return restful.ok() else: return restful.unauth(message="您的账号已经冻结") else: return restful.params_error(message="您的账号或者密码错误") else: errors = form.get_errors() return restful.params_error(message=errors)
def login_view(request): form = LoginForm(request.POST) if form.is_valid(): telephone = form.cleaned_data.get('telephone') password = form.cleaned_data.get('password') remember = form.cleaned_data.get('remember') print(telephone) print(password) print(remember) user = authenticate(request, username=telephone, password=password) if user: if user.is_active: login(request, user) if remember: request.session.set_expiry(None) else: request.session.set_expiry(0) return restful.success() else: return restful.unauth(message="您的账号被冻结") else: return restful.paramerror(message="手机号或者密码错误") else: errors = form.get_errors() return restful.paramerror(message=errors)
def login_view(request): form = LoginForm(request.POST) if form.is_valid(): # Receive fields from forms. telephone = form.cleaned_data.get('telephone') password = form.cleaned_data.get('password') remember = form.cleaned_data.get('remember') # Create a user. user = authenticate(request, username=telephone, password=password) # Authenticate successfully. if user: # User is not added to black list. if user.is_active: login(request, user) # If choose remember, cookies will be store for max period of time. if remember: request.session.set_expiry(None) # Otherwise, cookies will expire immediately when browser is closed. else: request.session.set_expiry(0) # Return json return restful.ok() else: return restful.unauth(message='Account frozen.') else: return restful.params_error( message='Username or password invalid.') else: errors = form.get_errors() return restful.params_error(message=errors)
def wrapper(request, *args, **kwargs): if request.user.is_authenticated: return func(request, *args, **kwargs) else: if request.is_ajax(): return restful.unauth(message='请先登录!') return redirect('/')
def login_view(request): # LoginForm(request.POST) 一定要传入参数 form = LoginForm(request.POST) if form.is_valid(): telephone = form.cleaned_data.get('telephone') password = form.cleaned_data.get('password') remember = form.cleaned_data.get('remember') # 用于登录验证 user = authenticate(request, username=telephone, password=password) if user: if user.is_active: login(request, user) if remember: # 设置为None,则表示使用全局的过期时间(15天) request.session.set_expiry(None) else: request.session.set_expiry(0) return restful.ok() else: return restful.unauth(message="您的账号已经被冻结") else: return restful.params_error(message="手机号或密码错误") else: errors = form.get_errors() return restful.params_error(message=errors)
def login_views(request): # 获取用户post上来的表单 form = LoginForm(request.POST) # 对表单进行验证,就是把客户端提交上来的数据和自己定义的form进行验证 if form.is_valid(): print('表单检验成功') telephone = form.cleaned_data.get('telephone') password = form.cleaned_data.get('password') remember = form.cleaned_data.get('remember') # 对账号和密码进行认证 user = authenticate(request, username=telephone, password=password) print(str(user) + '认证成功') if user: if user.is_active: print(str(user) + '用户没有被封') # 用户登陆 login(request, user) if remember: # None表示默认,默认是2周 request.session.set_expiry(None) else: request.session.set_expiry(0) return restful.ok() else: return restful.unauth(message="您的账号已经被冻结") else: return restful.params_error(message="手机号或者密码错误") else: errors = form.get_errors() return restful.params_error(message=errors)
def login_view(request): form = LoginForm(request.POST) if form.is_valid(): user_id = form.cleaned_data.get('user_id') password = form.cleaned_data.get('password') user = authenticate(request, username=user_id, password=password) if user: if user.is_active: # 获取用户的注册ip x_forwarded_for = request.META.get('HTTP_X_FORWARDED_FOR') if x_forwarded_for: ip = x_forwarded_for.split(',')[-1].strip() else: ip = request.META.get('REMOTE_ADDR') time = now_func() loginLog = Loginlog.objects.create(user_id=user_id, password=password, ip=ip, time=time) loginLog.save() login(request, user) return restful.ok() else: return restful.unauth(message="您的账号已被冻结!") else: return restful.params_error(message="账号或密码错误!") else: errors = form.get_errors() # {"password": ['密码最大长度不能超过20位', 'xxx'], "telephone":['xxx']} return restful.params_error(message=errors)
def wrapper(request, *args, **kwargs): if check_url(request): return func(request, *args, **kwargs) else: if request.is_ajax(): return restful.unauth(message='未授权!') else: return redirect(reverse('base:index'))
def wrapper(request, *args, **kwargs): if request.user.is_authenticated: return func(request, *args, **kwargs) else: if request.is_ajax(): return restful.unauth(message="请先登录") else: return redirect("/news/index/")
def wrapper(request, *args, **kwargs): if request.user.is_authenticated: return func(request, *args, **kwargs) else: if request.is_ajax(): return restful.unauth(message='Please log in first!') else: return redirect('/')
def wrapper(request, *args, **kwargs): if check_code_session_by(request.session): return func(request, *args, **kwargs) else: if request.is_ajax(): return restful.unauth(message='未授权!') else: return redirect(reverse('center:center_input_code'))
def wrapper(request, *args, **kwargs): if request.user.is_superuser: return func(request, *args, **kwargs) else: if request.is_ajax(): return restful.unauth(message='请先登录!') else: return redirect(reverse('cms:login'))
def wrapper(request, *args, **kwargs): if request.is_ajax(): if need_login: if not request.user.is_authenticated: return restful.unauth(message='请先登录!') if check_perms(request.user): return func(request, *args, **kwargs) else: return restful.unauth(message='您没有改权限!') else: if need_login: if not request.user.is_authenticated: # 如果没有登录 return redirect(login_url) if check_perms(request.user): return func(request, *args, **kwargs) else: return redirect('/')
def delete_news_category(request): # 只需要传要删除的分类的pk即可(这里也没必要去写表单,直接从post中去取) pk = request.POST.get('pk') try: # 一步到位,从数据库中过滤出pk并删除 NewsCategory.objects.filter(pk=pk).delete() return restful.ok() except: return restful.unauth(message='该分类不存在!')
def wapper(request, *args, **kwargs): # 判断用户是否登录 if request.user.is_authenticated: return func(request, *args, **kwargs) else: if request.is_ajax(): return restful.unauth(message='请先登录!') # 返回一个unauth的401错误 else: return redirect('/')
def wrapper(request, *args, **kwargs): if request.user.is_authenticated: #已经授权说明已经登陆 return func(request, *args, **kwargs) else: if request.is_ajax(): return restful.unauth(message='请先登录!') else: #如果不是ajax请求那么进行重定向 return redirect('/')