Ejemplo n.º 1
0
 def post(self, request):
     next = request.POST.get('next', '')
     form = RegisterForm(request.POST)
     if form.is_valid():
         email = request.POST.get('email', '')
         _user = UserProfile.objects.filter(email=email)
         if _user:
             register_form = RegisterForm()
             return render(
                 request, 'user/register.html', {
                     'register_form': register_form,
                     'next': next,
                     'message': '此邮箱已经注册!'
                 })
         form.save()
         send_mail(
             'Subject here',
             'Here is the message.',
             '*****@*****.**',
             [email],
             fail_silently=False,
         )
         if next:
             return HttpResponseRedirect(next)
         else:
             return HttpResponseRedirect(reverse('index'))
     else:
         register_form = RegisterForm()
         return render(request, 'user/register.html', {
             'register_form': register_form,
             'next': next
         })
Ejemplo n.º 2
0
Archivo: views.py Proyecto: jsye/shop
 def post(self, request):
     res = request.POST
     form = RegisterForm(res)
     data = form.is_valid()
     if data:
         form.save()
         return redirect(reverse('user:login'))
     else:
         return render(request, 'user/reg.html', {"form": form})
Ejemplo n.º 3
0
 def post(self, request):
     # 1.接收数据
     # 2.回复数据
     form = RegisterForm(request.POST)
     # 3.处理数据
     if form.is_valid():
         form.save()
         # 注册成功,跳转到登陆页面
         return redirect(reverse('user:login'))
     # 注册失败,跳转到注册页面,并提示错误信息
     return render(request, 'user/reg.html', {'form': form})
Ejemplo n.º 4
0
    def post(self, request):
        # request.POST 是一个类字典数据结构,记录了用户提交的注册信息
        # 这里提交的就是用户名(username)、密码(password)、邮箱(email)
        form = RegisterForm(request.POST)
        # 校验form表单的合法性
        if form.is_valid():

            # 保存到数据库
            form.save()
            # 重定向到登录页
            return redirect('../login')
Ejemplo n.º 5
0
def register(request):
    if request.method == 'POST':
        form = RegisterForm(request.POST, request.FILES)

        if form.is_valid():
            form.save()
            messages.success(request, '注册成功,请登录!')
            return redirect('/user/login')
    else:
        # 如果不是post方法,则返回注册页面
        form = RegisterForm()
    return render(request, 'user/register.html', {'form': form})
Ejemplo n.º 6
0
def register(request):
    if request.method == "POST":
        form = RegisterForm(request.POST)
        if form.is_valid():
            form.save()
            username = form.cleaned_data['username']
            messages.success(request,
                             "create user {} success".format(username))
            return redirect("/login")
    else:
        form = RegisterForm()
    context = {'title': 'Create User', 'form': form}
    return render(request, "registration/register.html", context)
Ejemplo n.º 7
0
def register(request):
    form = RegisterForm
    context = {}
    context['form'] = form
    if request.method == "POST":
        form = RegisterForm(request.POST)
        if form.is_valid():
            form.save()
            return redirect('loginpage')
        else:
            context = {}
            context['form'] = form
            return render(request, "user/registeration.html", context)
    return render(request, "user/registeration.html", context)
Ejemplo n.º 8
0
def home_view(request):

    if not request.user.is_authenticated:

        #Getting a random contest to be used in steps section
        count = Contest.objects.count()
        if count > 0:
            random_index = randint(0,count-1)
            random_contest = Contest.objects.all()[random_index]
        else:
            random_contest = None

        #Sign up form
        form = RegisterForm(data=request.POST or None)
        if form.is_valid():
            user = form.save(commit=False)
            password = form.cleaned_data.get('password1')
            user.set_password(password)
            user.save()
            messages.success(request, "Thank you for joining our community. Explore the best photos on Photash!", extra_tags="alert-success")

            #setting language by the IP
            client = geoip2.webservice.Client(132292, '9uNrE6xTWGHX')
            ip = get_ip(request)
            response = client.city('46.218.85.101')  # Uzak server'a yüklendiğinde burdaki harcoded ip yerine ip yazılacak. Şu an yazılınca 127.0.0.1 hata çıkartıyor o yüzden yazılmadı
            if (response.country.iso_code == "TR"):
                user.profile.languagePreference ="tr"
                user.save()

            # mail verification
            token = account_activation_token.make_token(user)
            uid = urlsafe_base64_encode(force_bytes(user.pk)).decode()
            send_mail(
                'Please confirm your photash account',
                'Click the link belox \n http://127.0.0.1:8000/user/activate/{}/{}'.format(uid, token),
                '*****@*****.**',
                [user.email, ],
                fail_silently=False,
            )
            new_user = authenticate(username=user.username, password=password)
            login(request, new_user)


        context={
            'form': form,
            'random_contest': random_contest
        }

        # Guestler için session kontrolü
        # Session'da language belirlenmemiş ise önce belirleyelim
        if "language" not in request.session:
            set_session_for_language_according_to_IP(request)

        if (request.session['language'] == "tr"):
            return render(request, 'home/home-tr.html', context)
        else:
            return render(request, 'home/home.html', context)
    else:
        return render(request, 'home/timeline.html')
Ejemplo n.º 9
0
def register(request):
    if request.method == 'POST':
        form = RegisterForm(request.POST)
        if form.is_valid():

            user = form.save()
            request.session['uid'] = user.id

    return render(request,'user/register.html',{})
Ejemplo n.º 10
0
def register(request):
    f = RegisterForm()
    m = NameForm()

    if request.method == "POST":
        f = RegisterForm(request.POST)
        if f.is_valid():
            f.save()
        m = NameForm(request.POST)

        obj = m.save(commit=False)
        obj.RegisterNumber = request.POST['username']
        print(request.POST['username'])

        if m.is_valid():
            print("hii")
            obj.save()

            return HttpResponseRedirect(reverse("login"))
    return render(request, "user/register.html", {"form": f, "name": m})
Ejemplo n.º 11
0
def register(request):
    form = RegisterForm(request.POST, request.FILES)
    if form.is_valid():
        user = form.save(commit=False)
        user.password = make_password(user.password)
        # user.password = password2MD5(user.password)
        user.save()
        request.session['uid'] = user.id
        request.session['nickname'] = user.nickname
        return redirect('/user/info/')
    return render(request, 'register.html', {})
Ejemplo n.º 12
0
def register(request):
    if request.method == 'POST':
        form = RegisterForm(request.POST, request.FILES)
        if form.is_valid():
            user = form.save(commit=False)
            user.save()
            request.session['uid'] = user.id
            return redirect('/user/info/')
        else:
            return render(request, 'register.html', {'errors': form.errors})
    return render(request, 'register.html')
Ejemplo n.º 13
0
def register(request):
    if request.method == 'POST':
        form = RegisterForm(request.POST, request.FILES)
        if form.is_valid():
            user = form.save(commit=False)
            user.password = make_password(user.password)
            user.save()
            return redirect('/user/login/')
        else:
            return render(request, 'register.html', {'error': form.errors})
    else:
        return render(request, 'register.html', {})
Ejemplo n.º 14
0
def register(request):
    if request.method == "POST":
        form = RegisterForm(request.POST, request.FILES)
        if form.is_valid():
            user = form.save(commit=False)
            user.password = make_password(user.password)
            user.save()
            return redirect("/user/login/")
        else:
            return render(request, "register.html", {"error": form.errors})
    else:
        return render(request, "register.html")
Ejemplo n.º 15
0
def register(request):
    if request.method == 'POST':
        form = RegisterForm(request.POST)
        if form.is_valid():
            # form.save()方法中传递一个参数commit,赋值为False,代表不要提交到数据库
            user = form.save(commit=False)
            user.save()
            # 设置session
            request.session['uid'] = user.id
            return redirect('/user/info/')
        else:
            return render(request, 'register.html', {'errors': form.errors})
    return render(request, 'register.html')
Ejemplo n.º 16
0
def register(request):
    if request.method == 'POST':
        form = RegisterForm(request.POST, request.FILES)
        if form.is_valid():
            user = form.save(commit=False)
            user.password = make_password(user.password)  # 密码做一次哈希处理
            user.save()

            # 记录用户登录状态
            request.session['uid'] = user.id
            request.session['nickname'] = user.nickname
            return redirect('/user/info/')
        else:
            return render(request, 'register.html', {'error': form.errors})
    return render(request, 'register.html')
Ejemplo n.º 17
0
def register(request):
    if request.method == 'POST':
        form = RegisterForm(request.POST, request.FILES)
        if form.is_valid():
            user = form.save(commit=False)
            user.password = make_password(user.password)  # 密码加密
            user.save()

            # 记录登录状态
            request.session['uid'] = user.id
            request.session['nickname'] = user.nickname
            request.session['avatar'] = user.icon.url
            return redirect('/post/list/')
        else:
            return render(request, 'register.html', {'error': form.errors})
    else:
        return render(request, 'register.html')
Ejemplo n.º 18
0
def register(request):
    if request.method == 'POST':
        form = RegisterForm(request.POST, request.FILES)
        if form.is_valid():
            # 创建 User 对象,并修改密码
            user = form.save(commit=False)
            user.password = make_password(user.password)
            user.save()

            Role.add_perm(user.id,'user')
            # 写入 session 数据
            request.session['uid'] = user.id
            request.session['nickname'] = user.nickname
            return redirect('/user/info/')
        else:
            return render(request, 'register.html', {'error': form.errors})
    return render(request, 'register.html')
Ejemplo n.º 19
0
def register(request):
    if request.method == 'POST':
        form = RegisterForm(request.POST, request.FILES)
        if form.is_valid():
            user = form.save(commit=False)  # 保存图片,但不会向数据库提交
            user.password = make_password(user.password)
            user.save()

            # 向 session 写入登陆状态
            request.session['uid'] = user.id
            request.session['nickname'] = user.nickname

            # 返回用户信息页
            return redirect('/user/info/')
        else:
            return render(request, 'register.html', {'error': form.errors})

    return render(request, 'register.html')
Ejemplo n.º 20
0
def register(request):
    if request.method == "POST":
        form = RegisterForm(request.POST, request.FILES)
        if form.is_valid():
            user = form.save(commit=False)
            user.password = make_password(user.password)
            user.save()

            UserRoleRelation.add_role_to_user(user.id, "user")

            request.session["uid"] = user.id
            request.session["nickname"] = user.nickname
            request.session['avatar'] = user.avatar
            return redirect("user_info")
        else:
            return render(request, "bbs/user/register.html",
                          {"error": form.errors})
    return render(request, "bbs/user/register.html")
Ejemplo n.º 21
0
def register(request):
    # 从 get 或者 post 请求中获取 next 参数值
    # get 请求中,next 通过 url 传递,即 /?next=value
    # post 请求中,next 通过表单传递,即 <input type="hidden" name="next" value="{{ next }}"/>
    redirect_to = request.POST.get('next', request.GET.get('next', ''))

    # 只有当请求为 POST 时,才表示用户提交了注册信息
    if request.method == 'POST':
        # request.POST 是一个类字典数据结构,记录了用户提交的注册信息
        # 这里提交的就是用户名(username)、密码(password)、邮箱(email)
        # 用这些数据实例化一个用户注册表单
        form = RegisterForm(request.POST)

        # 验证数据的合法性
        if form.is_valid():
            # 如果提交数据合法,调用表单的 save 方法将用户数据保存到数据库
            user = form.save()
            Profile.objects.create(user=user)
            UserInfo.objects.create(user=user)
            # 自动登录
            login(request,
                  user,
                  backend='django.contrib.auth.backends.ModelBackend')

            if redirect_to:
                # 跳转之前浏览页面
                return redirect(redirect_to)
            else:
                # 注册成功,跳转回首页
                return redirect('/')
    else:
        # 请求不是 POST,表明用户正在访问注册页面,展示一个空的注册表单给用户
        form = RegisterForm()

    # 渲染模板
    # 如果用户正在访问注册页面,则渲染的是一个空的注册表单
    # 如果用户通过表单提交注册信息,但是数据验证不合法,则渲染的是一个带有错误信息的表单
    return render(request,
                  'registration/register.html',
                  context={
                      'form': form,
                      'next': redirect_to,
                  })
Ejemplo n.º 22
0
def register(request):
    if request.method == 'POST':
        form = RegisterForm(request.POST, request.FILES)
        print('ss')
        if form.is_valid():
            # form表单可以直接将icon等保存到数据库
            # commit = False 先拿到资料 True保存到数据库
            user = form.save(commit=False)
            user.password = make_password(user.password)
            user.save()

            # 设置用户登录状态
            request.session['uid'] = user.id
            request.session['nickname'] = user.nickname
            request.session['icon'] = user.icon.url

            return redirect('/user/info/')
        else:
            return render(request, 'register.html', {'error': form.errors})
    return render(request, 'register.html')
Ejemplo n.º 23
0
def register(request):
    if request.method == 'POST':
        # 生成对象 参数为字典形式,也就是传入的数据
        # 上传的图片是存在FILES中的
        form = RegisterForm(request.POST, request.FILES)
        # 判断输入的是否是有效的
        if form.is_valid():
            # 不仅可以将user提交到数据库中,还可以将图片保存到文件中去
            # 由于form和user表管理,所以有save方法
            user = form.save(commit=False)  #save先临时执行一下但是不立马保存到数据库中去
            user.password = make_password(user.password)
            user.save()
            #记录用户的登录状态
            request.session['uid'] = user.id
            request.session['nickname'] = user.nickname
            request.session['avatar'] = user.avatar
            # 跳转到用户信息模块 后面不需要跟着参数,因为参数存在session只要用户没退出都可用session
            return redirect('/user/info/')
        else:
            return render(request, 'register.html', {'error': form.errors})
    return render(request, 'register.html')
Ejemplo n.º 24
0
def registerUser(request):
    template_name = 'reg.html'
    if request.method == 'POST':
        form = RegisterForm(request.POST)
        if form.is_valid():
            user = form.save()
            #Criando objeto de Profile com os dados preenchidos pelo Form
            profile = Profile()
            profile.username = request.POST['username']
            profile.cellphone = form.cleaned_data['cellphone']
            profile.birthday = form.cleaned_data['birthday']
            profile.save()
            #Autenticando usuário
            user = authenticate(username=request.POST['username'],
                                password=form.cleaned_data['password1'])
            login(request, user)
            return redirect('role:user_interests')
    else:
        form = RegisterForm()
    context = {'form': form}
    return render(request, template_name, context)