コード例 #1
0
 def setUp(self):
     User.objects.bulk_create([
         User(id=1,
              first_name='first',
              last_name='last',
              user_name='test',
              password=1234567,
              email='*****@*****.**'),
         User(id=2,
              first_name='we',
              last_name='plash',
              user_name='weplash',
              email='*****@*****.**',
              password=1234567)
     ])
     Photo.objects.create(id=1, image='image', location='location')
     HashTag.objects.create(id=1, name='tag')
     PhotoHashTag.objects.create(id=1,
                                 photo=Photo.objects.get(id=1),
                                 hashtag=HashTag.objects.get(id=1))
     Collection.objects.create(id=1,
                               name='collection',
                               user=User.objects.get(id=1))
     PhotoCollection.objects.create(id=1,
                                    photo=Photo.objects.get(id=1),
                                    collection=Collection.objects.get(id=1))
コード例 #2
0
 def create(self, validated_data):
     user = User(email=validated_data.get('email'),
                 fullname=validated_data.get('fullname'))
     password = self.clean_password()
     user.set_password(password)
     user.save()
     return user
コード例 #3
0
def sign_up(request):
    """
    Retrieves essential fields for user creation. returns 'invalid params given' for missing fields.
    also returns 'Username already taken' if username is not unique.
    logs the user in, right after user creation.
    """
    data = json.loads(request.body)
    username = data.get('username')
    password = data.get('password')
    phone_number = data.get('phone_number')
    first_name = data.get("first_name")
    last_name = data.get("last_name")
    email = data.get("email")

    if (username is None)\
            or (password is None)\
            or (phone_number is None)\
            or (email is None)\
            or (first_name is None)\
            or (last_name is None):
        return JsonResponse({"message": "invalid params give"}, status=400)

    user = User(email=email,
                username=username,
                password=make_password(password, salt=SALT),
                mobile_number=phone_number,
                first_name=first_name,
                last_name=last_name)
    try:
        user.save()
    except IntegrityError:
        return JsonResponse({'message': "Username already taken."}, status=400)
    token = user.login_user(remember_me=False)
    return JsonResponse({'token': "token " + token}, status=200)
コード例 #4
0
    def post(self, request):
        uid = request.headers.get('Authorization')
        decoded_token = auth.verify_id_token(uid)
        uid = decoded_token['uid']
        print(uid)
        # Check if User is valid or not #
        try:
            firebase_user = auth.get_user(uid)
        except:
            message = {
                "message": "User Not Valid",
                "status": str(status.HTTP_403_FORBIDDEN)
            }
            raise AuthenticationFailed(message)

        # Trying to fetch a User with Firebase uid exist's , if not create a new user and fetch user's display name #
        try:
            user = User.objects.get(username=uid)
            user.first_name = firebase_user.display_name
            user.save()
        except:
            user = User(username=uid,
                        first_name=firebase_user.display_name,
                        is_active=True)
            user.save()
        message = {
            "message": "Successfully Updated first_name",
            "status": str(status.HTTP_201_CREATED),
            "phone": user.mobile
        }
        return Response(message, status.HTTP_201_CREATED)
コード例 #5
0
 def create(self, validated_data):
     password = validated_data.pop('password')
     user = User(**validated_data)
     user.set_password(password)
     user.is_sponsor = True
     user.save()
     return user
コード例 #6
0
def process_request(request):
    print('>>>>>>>>>>>>>>>>>>>>> THIS IS SIGNUP.PY')

    clientemail = request.POST.get('first_name')
    clientmessage = request.POST.get('last_name')
    print('>>>>>>>>>> fname was', clientemail)
    print('>>>>>>>>>> lname was', clientmessage)

    # process the form (ie validation)
    form = SignupForm()
    if request.method == 'POST':  # just submitted the form
        form = SignupForm(request.POST)
        if form.is_valid():
            print('>>>>>>>>>>>>>>>>>> THE FORM IS VALID?')
            u = User()
            u.username = form.cleaned_data.get('username')
            u.first_name = form.cleaned_data.get('first_name')
            u.last_name = form.cleaned_data.get('last_name')
            u.email = form.cleaned_data.get('email')
            u.set_password(form.cleaned_data.get('password'))
            u.address1 = form.cleaned_data.get('address')
            u.address2 = form.cleaned_data.get('address2')
            u.save()
            return HttpResponseRedirect('/homepage/index/')

    template_vars = {
        'form': form,
    }
    return dmp_render_to_response(request, 'signup.html', template_vars)
コード例 #7
0
ファイル: test.py プロジェクト: NTUSA/ntu-vote-auth-server
    def test_null_station_id(self):
        username = '******'
        password = '******'
        user = User(username=username)
        user.set_password(password)
        user.kind = User.STATION
        user.save()

        station = Station()
        station.name = 'no name'
        station.user = user
        station.max_sessions = 3
        station.save()
        # login
        data = {
            'username': username,
            'password': password,
            'api_key': settings.API_KEY
        }
        client = APIClient()
        client.post(reverse('general:register'), data, format='json')

        try:
            session = Session.objects.get(user=user)
        except:
            session = None

        data = {'token': session.token, 'api_key': settings.API_KEY}
        response = self.client.post(self.url, data)
        self.assertEqual(response.data, {
            'status': 'error',
            'reason': 'station_error'
        })
        self.assertEqual(response.status_code, status.HTTP_400_BAD_REQUEST)
コード例 #8
0
def register(request):
    if request.method == "POST":
        uf = UserForm(request.POST)
        if uf.is_valid():
            username = uf.cleaned_data['username']
            password = uf.cleaned_data['password']
            email = uf.cleaned_data['email']
            phone = uf.cleaned_data['phone']
            domain = uf.cleaned_data['domain']
            vip = uf.cleaned_data['vip']
            clientname = uf.cleaned_data['clientname']

            user = User()
            user.username = username
            user.password = password
            user.email = email
            user.phone = phone
            user.domain = domain
            user.vip = vip
            user.clientname = clientname
            user.save()

            return render_to_response('success.html', {'username': username})
    else:
        uf = UserForm()
    return render_to_response('register.html', {'uf': uf})
コード例 #9
0
 def get_answerlist(self, qid=None, uid=None):
     """ get answers list width user evaluation by question_id and user_id
     """
     if qid:
         answer_list = []
         cursor = connection.cursor()
         if uid:
             cursor.execute(
                 """
             select a.id,a.content,a.addtime,a.commentcount,a.favorcount,a.opposecount,u.id uid,u.email,u.name,u.surname,
             e.status,e.evaluation_id as eid,u.avatar avatar from quest_answer a inner join account_user u on a.user_id=u.id left join\
             quest_answerevaluation e on (a.id=e.answer_id and e.user_id=%s ) where a.question_id=%s 
             """, [uid, qid])
         else:
             cursor.execute(
                 """
             select a.id,a.content,a.addtime,a.commentcount,a.favorcount,a.opposecount,u.id uid,u.email,u.name,u.surname,
             null as status,null as eid,u.avatar avatar from quest_answer a inner join account_user u on a.user_id=u.id 
             where a.question_id=%s""", [qid])
         for row in cursor.fetchall():
             answer=self.model(id=row[0],content=row[1],addtime=row[2],commentcount=row[3],favorcount=row[4],\
                     opposecount=row[5],user=User(id=row[6],email=row[7],name=row[8],surname=row[9],avatar=row[12]),\
                     question=Question(id=qid))
             answer.evaluation = row[10]
             #import pdb;pdb.set_trace()
             if not row[10]:
                 answer.evaluation = 0
                 answer.eid = row[11]
             answer_list.append(answer)
         return answer_list
     else:
         return None
コード例 #10
0
def register(request):
    if request.method == "POST":
        uf = UserFrom(request.POST)
        if uf.is_valid():
            username = uf.cleaned_data['username']
            password = uf.cleaned_data['password']
            email = uf.cleaned_data['email']
            qq = uf.cleaned_data['qq']
            userResult = User.objects.filter(username=username,
                                             password=password)
            #error=[]
            filterResult = User.objects.filter(username=username)
            if len(filterResult) > 0:
                return render_to_response('hasregister.html',
                                          {'username': username})

            else:
                user = User()
                user.username = username
                user.password = password
                user.email = email
                user.qq = qq
                user.save()
                return render_to_response('success.html',
                                          {'username': username})
    else:
        uf = UserFrom()
    return render_to_response('register.html', {'uf': uf})
コード例 #11
0
ファイル: test.py プロジェクト: NTUSA/ntu-vote-auth-server
    def setUpTestData(self):
        self.username = '******'
        self.password = '******'
        self.user = User(username=self.username)
        self.user.set_password(self.password)
        self.user.kind = User.STATION
        self.user.save()

        self.name = 'NTU'
        self.station = Station()
        self.station.name = self.name
        self.station.user = self.user
        self.station.external_id = 1
        self.station.max_sessions = 3
        self.station.save()

        self.url = reverse('general:ping')
        # login
        data = {
            'username': self.username,
            'password': self.password,
            'api_key': settings.API_KEY
        }
        client = APIClient()
        client.post(reverse('general:register'), data, format='json')

        try:
            session = Session.objects.get(user=self.user)
        except:
            session = None
        self.session = session
        self.token = session.token
コード例 #12
0
ファイル: views.py プロジェクト: xinxiang16/website
def register2(request):
    print("hhhhhhhhh====")
    if request.method == "POST":
        uf = UserForm(request.POST)
        if uf.is_valid():
            #获取表单信息

            username = uf.cleaned_data['username']
            password = uf.cleaned_data['password']
            phone = uf.cleaned_data['phone']
            email = uf.cleaned_data['email']
            #将表单写入数据库
            print('1111======')
            user = User()
            user.username = username
            user.password = password
            user.phone = phone
            user.email = email
            user.save()
            print('save======')
            #返回注册成功页面
            return render(request, 'success.html', {'username': username})
    else:
        uf = UserForm()
        return render(request, 'register.html', {'uf': uf})
コード例 #13
0
ファイル: views.py プロジェクト: shashwat2222/task
def show_signup(request):
    if request.method == "POST":
        na = request.POST['name']
        m_no = request.POST['mno']
        e_mail = request.POST['email']
        password1 = request.POST['password1']
        password2 = request.POST['password2']
        #print(na,m_no,e_mail,password1)
        if password1 == password2:
            if User.objects.filter(email=e_mail).exists():
                print('email name taken')
                return redirect("home")
            else:
                us = User(name=str(na),
                          mno=str(m_no),
                          email=e_mail,
                          password=str(password1))
                us.save()
                messages.success(request, "thanks for signup")
                print('signup succesfully')
                name = User.objects.get(name=na)
                return render(request, "signup.html", {'data': name})
        else:
            print('password not matching')
            return redirect("home")
    else:
        return render(request, "signup.html")
コード例 #14
0
 def get_questions_by_id(self, id_list):
     question_list = []
     if id_list:
         cursor = connection.cursor()
         #import pdb;pdb.set_trace()
         cursor.execute(
             """select q.id as qid, q.title as qtitle,q.answercount as answercount,aid,acontent,uid ,`name`,surname
         ,avatar,followcount from quest_question q left join (select a.id as aid,a.question_id as question_id, a.content
         as acontent, au.id as uid ,au.`name` as `name`, au.surname as surname ,au.avatar as avatar from quest_answer
         a left JOIN account_user au on a.user_id=au.id  WHERE a.id=(select id from quest_answer a1 where
         a1.question_id=a.question_id ORDER BY a1.favorcount desc limit 1 ))a2 on a2.question_id=q.id left join ( select
         COUNT(question_id) as followcount,question_id  from quest_qustionfollow GROUP BY question_id)qf on
         qf.question_id=q.id where q.id in(""" +
             ','.join(['%s' for _ in id_list]) + ")", id_list)
         for row in cursor.fetchall():
             question = self.model(id=row[0],
                                   title=row[1],
                                   answercount=row[2])
             if row[3]:
                 question.answer = Answer(id=row[3],
                                          content=row[4],
                                          user=User(id=row[5],
                                                    name=row[6],
                                                    surname=row[7],
                                                    avatar=row[8]))
             if not row[9]:
                 question.followcount = 0
             question_list.append(question)
     return question_list
コード例 #15
0
ファイル: views.py プロジェクト: prograsshopper/health_code
    def create(self, request, *args, **kwargs):
        email = request.POST.get('email', '')
        password = request.POST.get('password', '')
        name = request.POST.get('name', '')
        if not email or not password or not name:
            result = {
                'result': 'error',
                'error': 'No Required Field',
                'error_msg': 'Email, Password, Name은 필수입니다.'
            }
            return JsonResponse(result)
        phone = request.POST.get('phone', '')
        is_partner = request.POST.get('is_partner', '')
        is_partner = True if is_partner == 'true' else False
        if is_partner:
            center = request.POST.get('center', '')
            center = Center.objects.filter(id=center).first()
            if not center:
                result = {
                    'result': 'error',
                    'error': 'No Required Field',
                    'error_msg': '직원의 경우 센터 코드는 필수입니다.'
                }
            return JsonResponse(result)
        else:
            center = None
        nick_name = request.POST.get('nick_name', '')

        user = User.objects.filter(email=email).first()
        if user:
            result = {
                'result': 'error',
                'error': 'User Exist',
                'error_msg': '동일한 이메일을 가진 유저가 존재합니다.'
            }
            return JsonResponse(result)
        sid = transaction.savepoint()
        try:
            with transaction.atomic():
                user = User(username=email,
                            email=email,
                            phone=phone,
                            is_partner=is_partner,
                            center=center,
                            name=name,
                            nick_name=nick_name)
                user.set_password(password)
                user.save()
            transaction.savepoint_commit(sid)
            result = {'result': 'success', 'error': '', 'error_msg': ''}
        except:
            traceback.print_exc()
            transaction.savepoint_rollback(sid)
            result = {
                'result': 'error',
                'error': 'Exception in generating User',
                'error_msg': '유저 생성 과정중 예외가 발생했습니다.'
            }
        return JsonResponse(result)
コード例 #16
0
def jwt_get_username_from_payload_handler(payload):
    auth0_id = payload.get('sub').replace("|", ".")
    authenticate(remote_user=auth0_id)
    if len(User.objects.filter(username=auth0_id).all()) < 1:
        user = User()
        user.username = auth0_id
        user.save()
    return auth0_id
コード例 #17
0
 def create(self, validated_data):
     profile_data = validated_data.pop('profile')
     password = validated_data.pop('password')
     user = User(**validated_data)
     user.set_password(password)
     user.save()
     UserProfile.objects.create(user=user, **profile_data)
     return user
コード例 #18
0
ファイル: views.py プロジェクト: zhangwei725/django_model02
def insert(request):
    # save()
    user = User(username='******', password='******')
    # user.username = '******'
    # force_insert   强行添加  开发中不要使用 因为可能会违反约束,导致脏数据
    #  force_update  强制更新
    user.save()
    return HttpResponse('添加单个对象')
コード例 #19
0
 def __init__(self, username, email):
     UserModels = User.objects.filter(username=username)
     if not UserModels:
         UserModels = User(username=username, email=email, password='')
         UserModels.save()
     self.username = username
     self.email = email
     self.UserModels = UserModels[0]
コード例 #20
0
ファイル: tests.py プロジェクト: gagantrivedi/django-accounts
 def setUp(self):
     self.user_name = 'test'
     self.user_email_id = '*****@*****.**'
     self.password = '******'
     self.user = User(username=self.user_name,
                      email_id=self.user_email_id,
                      password=self.password)
     self.user.save()
     print('user object created')
コード例 #21
0
    def setUp(self):
        super(VDTest, self).setUp()
        self.user = User()
        self.user.username = SG('[\w]{30}').render()
        self.user.password = SG('[\l]{6:10}&[\d]{2}').render()
        self.user.save()

        self.realUser = RealUser(email='*****@*****.**')
        self.realUser.save()
コード例 #22
0
    def test_login_external_fail(self):
        user = User(username='******')
        user.set_password('pass')
        user.save()
        response = self.client.post('/api-auth/login/',
                                    dict(username='******', password='******'))

        self.assertEqual(response.status_code, status.HTTP_200_OK)
        self.assertNotLogin()
コード例 #23
0
def create_user(_username, _password, _is_admin):
    md5_password = utils.get_md5_value(_password)
    if _is_admin.upper() == 'Y':
        admin_flag = True
    else:
        admin_flag = False
    user = User(username=_username, password=md5_password, is_admin=admin_flag)
    user.save()
    return True
コード例 #24
0
def m_add_student(request):
    if request.method == "POST":
        ret = {"status": True, "msg": None}
        obj = AddStudent(request.POST)

        if obj.is_valid():
            username = obj.cleaned_data.get("username")
            name = obj.cleaned_data.get("name")
            gender = obj.cleaned_data.get("gender")
            college = obj.cleaned_data.get("college")
            grade = obj.cleaned_data.get("grade")
            province = obj.cleaned_data.get("province")
            card_id = obj.cleaned_data.get("card_id")
            nation = obj.cleaned_data.get("nation")
            email = obj.cleaned_data.get("email")
            telephone = obj.cleaned_data.get("telephone")
            qq = obj.cleaned_data.get("qq")
            print(obj.cleaned_data)
            grade_ = Grade.objects.get(id=grade)
            try:
                user = User(
                    username=username,
                    name=name,
                    gender=gender,
                    college=college,
                    grade=grade_,
                    province=province,
                    card_id=card_id,
                    nation=nation,
                    email=email,
                    telephone=telephone,
                    QQ=qq,
                    birthday=card_id[6:10] + '-' + card_id[10:12] + '-' + card_id[12:14],
                    role_id=3
                )
                user.set_password(card_id[-6:])
                user.save()
                ret["msg"] = "创建成功"
                return HttpResponse(json.dumps(ret, ensure_ascii=False))
            except ValidationError as e:
                print(str(e))
                ret["msg"] = str(e)
                ret["status"] = False
                return HttpResponse(json.dumps(ret, ensure_ascii=False))
            except Exception as e:
                if str(e) == "UNIQUE constraint failed: account_user.user_no":
                    ret["status"] = False
                    ret["msg"] = "学号已存在,请检查学号"
                return HttpResponse(json.dumps(ret, ensure_ascii=False))



        else:
            ret["status"] = False
            ret["msg"] = obj.errors
            print(obj.errors)
            return HttpResponse(json.dumps(ret, ensure_ascii=False))
コード例 #25
0
    def create_job_apply(self, apply_reason='bla bla bla'):
        u = User(1)
        u.save()
        user = u

        j = JobPost(1)
        j.save()
        jobapply = j

        return JobApply.objects.create(user=user, job=jobapply, JobApplyReason=apply_reason)
コード例 #26
0
	def setUp(self):
		user=User(username="******",email="*****@*****.**")
		user.set_password("haslo123")
		user.is_admin=False
		user.is_active=True
		user.is_customer=True
		user.save()
		user.customer.birth_date=datetime.date(1997,10,1)
		user.customer.money=500.0
		user.customer.save()		
コード例 #27
0
ファイル: signup.py プロジェクト: dbusteed/cookbook-old
    def commit(self, req):
        u = User()
        u.email = self.cleaned_data.get('email')
        u.set_password(self.cleaned_data.get('password'))
        u.save()

        user = authenticate(username=u.email,
                            password=self.cleaned_data.get('password'))

        login(req, user)
コード例 #28
0
 def post(self, request):
     serializer = UserSerializer(data=request.data)
     if not serializer.is_valid():
         self.error(serializer.errors)
     with transaction.atomic():
         roles = serializer.validated_data.pop('roles')
         user = User(**serializer.validated_data)
         user.set_password(serializer.validated_data['password'])
         user.save()
         user.roles.set(roles)
     return self.success(status=201)
コード例 #29
0
ファイル: resources.py プロジェクト: Happyandhappy/neptun
 def init_instance(self, row=None):
     instance = super().init_instance(row)
     try:
         user = User.objects.get(email=row.get('email'))
     except ObjectDoesNotExist:
         user = User(email=row.get('email'), name=row.get('name'))
         user.save()
     instance.user = user
     instance.client = Client.objects.get(name=row.get('client'))
     instance.role = Role.objects.get(name=row.get('role'))
     return instance
コード例 #30
0
def staff_create(request):
    form = StaffCreationForm(request.POST or None, instance=User())
    print(form)
    if request.POST and form.is_valid():
        form.save()
        msg = pgettext_lazy('Dashboard message',
                            'Created staff member %s') % (form['username'], )
        messages.success(request, msg)
        return redirect('dashboard:staff-index')
    ctx = {'staff_form': form}
    return TemplateResponse(request, 'dashboard/staff/detail.html', ctx)