示例#1
0
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)
示例#2
0
 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)
示例#3
0
def news_category_delete(request):
    pk = request.POST.get('pk')
    try:
        NewsCategory.objects.filter(pk=pk).delete()
        return restful.ok()
    except:
        restful.unauth(message='该分类不存在!')
示例#4
0
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)
示例#5
0
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!')
示例#6
0
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)
示例#7
0
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="该分类不存在!")
示例#8
0
文件: views.py 项目: 761176736/xyblog
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)
示例#9
0
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='该分类不存在!')
示例#10
0
文件: views.py 项目: mosi0513/blog
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='该分类不存在')
示例#11
0
文件: views.py 项目: NAZBIN/Web
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)
示例#12
0
文件: views.py 项目: lizhaojiang/xfz
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)
示例#13
0
文件: views.py 项目: cjmonkey/django
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)
示例#14
0
 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)
示例#15
0
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)
示例#16
0
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)
示例#17
0
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)
示例#18
0
 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('/')
示例#19
0
文件: views.py 项目: zuming001/kxyz
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)
示例#20
0
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)
示例#21
0
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)
示例#22
0
 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'))
示例#23
0
 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('/')
示例#25
0
 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'))
示例#26
0
 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'))
示例#27
0
 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('/')
示例#28
0
文件: views.py 项目: bujidaoei/xfz
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='该分类不存在!')
示例#29
0
 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('/')
示例#30
0
文件: decorators.py 项目: NAZBIN/Web
 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('/')