Exemple #1
0
def login(request):
    if request.method == 'POST':
        result = {}
        code = request.POST.get('code')
        name = request.POST.get('name')
        # body = json.loads(request.body.decode())
        # code = body['code']
        # name = body['name']
        res = requests.get(
            "https://api.weixin.qq.com/sns/jscode2session?appid=wx7f8e3abb8c49174e&secret=db01f42467b56c7eec14faa1b1513ba7&js_code={}&grant_type=authorization_code"
            .format(code))
        res_dic = res.json()
        errcode = res_dic['errcode']
        errmsg = res_dic['errmsg']
        if errcode == 0:
            openid = res_dic['res_dic']
            session_key = res_dic['session_key']
            token = api.get_random_token()
            obj = models.User(name=name,
                              openid=openid,
                              session_key=session_key,
                              token=token)
            obj.save()
            id = obj.id
            result['status'] = 0
            result['id'] = id
            result['token'] = token
        else:
            result['status'] = -1
            result['errmsg'] = errmsg
        return HttpResponse(json.dumps(result))

    return HttpResponse('404')
Exemple #2
0
    def create(self, validated_data):

        user = models.User(username=validated_data['username'],
                           email=validated_data['email'],
                           name=validated_data['name'])

        user.set_password(validated_data['password'])
        user.save()

        return user
Exemple #3
0
def create_user(request):
    if request.method != 'POST':
        return res_err(assemble_err_msg(-1, "WRONG_REQUEST_METHOD", "POST"))

    new_user = models.User(
        username = request.POST.get('username'), 
        first_name = request.POST.get('first_name'), 
        last_name = request.POST.get('last_name'), 
        email_address = request.POST.get('email_address'), 
        age = request.POST.get('age'),
        gender = request.POST.get('gender'),
        date_joined = datetime.now(), 
        zipcode = request.POST.get('zipcode'), 
        password = make_password(request.POST.get("password"))
    )
    
    try:
        new_user.save()
    except (db.Error, IntegrityError) as e:
        return res_err("Create user transaction failed with error " + str(e.args))
    return res_success("New user with user_id " + str(new_user.pk) + " is successfully created!")
Exemple #4
0
def create_user(request):
    if request.method != 'POST':
        return _error_response(request, "must make POST request")
    if 'first_name' not in request.POST or     \
       'last_name' not in request.POST or     \
       'password' not in request.POST or   \
       'username' not in request.POST:
        return _error_response(request, "missing required fields")

    u = models.User(username=request.POST['username'],                         \
                    first_name=request.POST['first_name'],                             \
                    last_name=request.POST['last_name'],                             \
                    password=hashers.make_password(request.POST['password']),  \
                   date_joined=datetime.datetime.now()                        \
                    )

    try:
        u.save()
    except db.Error:
        return _error_response(request, "db error")

    return _success_response(request, {'user_id': u.pk})
Exemple #5
0
def register():
    """ 注册 """
    if request.method == 'GET':
        return render_template('register.html')
    elif request.method == 'POST':
        form = forms.RegisterForm(formdata=request.form)
        if form.validate():
            count = db.session.query(models.User).filter(db.or_(models.User.username == form.data['username'])).count()
            if count:
                flash('用户名已存在。')
                return redirect(url_for('auth.register'))
            else:
                password_hash = hashlib.md5(form.data['password'].encode('utf-8')).hexdigest()
                db.session.add(models.User(username=form.data['username'],
                                           password_hash=password_hash))
                db.session.commit()
                db.session.close()
                flash('注册成功!')
                return redirect(url_for('auth.login'))

        else:
            for error in form.errors:
                flash(form.errors[error][0])
            return redirect(url_for('auth.register'))
Exemple #6
0
    def populate_db(self):
        # admin
        city_names = []
        with open('main/management/commands/cities.txt', 'r',
                  encoding='utf8') as file:
            city_names = file.readlines()

        for city_name in city_names:
            city = models.City(name=city_name.strip())
            city.save()

        # для парсинга хобби
        with open('main/management/commands/interests.txt',
                  'r',
                  encoding='utf8') as file:
            interests = file.readline().split(';')
            print(random.choice(interests))

        # для парсинга координат городов
        coordinates = {}
        with open('main/management/commands/coordinates.txt',
                  'r',
                  encoding='utf8') as file:
            for line in file.readlines():
                cityID = line.split(':')[0]
                cityCoordinate = line.split(':')[1]
                coordinates[int(cityID)] = cityCoordinate

        admin = models.User(aituUserId='*****@*****.**',
                            first_name="Админ",
                            last_name="Админович",
                            is_staff=True,
                            is_superuser=True)
        admin.set_password("admin")
        admin.save()

        df_names = pd.read_csv('main/management/commands/data.csv')

        BASE_DIR = Path(__file__).resolve().parent

        name_surname = []
        for i in range(0, 100):
            first_name = df_names['name'][i]
            external_id = df_names['name'][i] + str(
                df_names['count'][i]) + str(df_names['rowid'][i])

            # image = "static/" + random.choice(os.listdir(str(BASE_DIR) + "/images"))

            i += 1
            last_name = df_names['name'][i]
            name_surname.append(first_name + "//" + last_name)

            user = models.User(
                first_name=first_name,
                last_name=last_name,
                aituUserId=str(external_id),
            )

            user.set_password("admin12345")
            user.save()

            city_id = random.randint(1, 10)
            user_profile = models.UserProfile(
                user_id=user.pk,
                gender="f",
                city=models.City.objects.filter(id=city_id).first(),
                latitude=coordinates.get(city_id).split(',')[0],
                longitude=coordinates.get(city_id).split(',')[1],
                breefly=random.choice(interests),
                birth_date=self.get_random_birthday())
            print(i)
            user_profile.save()