Beispiel #1
0
def create_user_and_company():
    with open('scripts/data_company.json') as f1, \
            open('scripts/data_job.json') as f2:
        job_name_list = [i['name'] for i in json.load(f2)]
        experience_list = ['不限', '1-3年', '3-5年', '5-10年']
        degree_list = ['不限', '本科', '博士后']
        for i in json.load(f1):
            user = User(username=fake.name(), email=fake.email())
            user.password = '******'
            yield user
            company = Company(
                    name = i['name'],
                    logo = i['logo'],
                    location = i['location'],
                    description = i['description'],
                    about = i['about'] if len(i['about']) > 9 else \
                            fake.sentence(nb_words=11),
                    tags = i['tags'],
                    user = user,
            )
            yield company
            for i in range(randint(1, 5)):
                job = Job(
                    name = job_name_list[randint(1, len(job_name_list))-1],
                    salary_low = randint(3, 8) * 1000,
                    salary_high = randint(9, 15) * 1000,
                    location = fake.address(),
                    is_fulltime = 1,
                    experience_requirement = experience_list[
                            randint(1, len(experience_list)) - 1],
                    degree_requirement = degree_list[
                            randint(1, len(degree_list)) - 1],
                    company = company
                )
                yield job
Beispiel #2
0
def create_boss(company):
    user = User(username="******",
                email='*****@*****.**',
                password='******',
                role=User.ROLE_BOSS)
    user.company = company
    return user
Beispiel #3
0
    def fake_company(self):

        for company in self.lagou.company:
            c = User(
                name=company['companyShortName'],
                email=fake.email(),
                role=User.ROLE_COMPANY
            )
            c.password = '******'
            db.session.add(c)
            try:
                db.session.commit()
            except:
                db.session.rollback()
                continue
            d = CompanyDetail(
                logo='https://static.lagou.com/thumbnail_160x160/' + company['companyLogo'],
                site='https://shiyanlou.com',
                location=company['city'],
                field=company['industryField'],
                finance_stage=company['financeStage']
            )
            d.user_id = c.id
            db.session.add(d)
            db.session.commit()
Beispiel #4
0
 def create_user(self):
     user = User()
     user.username = self.username.data
     user.email = self.email.data
     user.password = self.password.data
     db.session.add(user)
     db.session.commit()
     return user
Beispiel #5
0
 def create_user(self):
     user = User()
     user.username = self.username.data
     user.email = self.email.data
     user.password = self.password.data
     db.session.add(user)
     db.session.commit()
     return user
Beispiel #6
0
    def create_user(self):
        user = User()
        self.populate_obj(user)
        user.role = 20
        user.company = Company(name=self.name.data)
        db.session.add(user)
        db.session.commit()

        return user
Beispiel #7
0
 def add_company(self):
     company = Company()
     user = User()
     user.role = 20
     self.populate_obj(user)
     self.populate_obj(company)
     db.session.add(user)
     db.session.add(company)
     db.session.commit()
     return company
Beispiel #8
0
def register_company():
    form = RegisterForm()
    if form.validate_on_submit():
        user = User()
        form.populate_obj(user)
        user.role = 20
        form.create_user(user)
        flash('注册成功', 'success')
        return redirect(url_for('user.index'))
    return render_template('register_company.html', form=form)
Beispiel #9
0
 def create_user(self):
     company = Company(name=self.username.data)
     db.session.add(company)
     db.session.commit()
     user = User(username=self.username.data,
                 email=self.email.data,
                 password=self.password.data)
     user.role = 20
     db.session.add(user)
     db.session.commit()
     return user
Beispiel #10
0
 def create_user(self, is_company=False):
     if not is_company:
         user = User(username=self.username.data,
                     email=self.email.data,
                     password=self.password.data)
     else:
         user = User(username=self.username.data,
                     email=self.email.data,
                     password=self.password.data,
                     role=User.ROLE_COMPANY)
     db.session.add(user)
     db.session.commit()
     return user
Beispiel #11
0
    def fake_data(self):

        for company in self.companies[:]:
            print(company["name"])
            # 创建企业用户
            c = User(
                username=company["name"],
                email=fake.email(),
                role=User.ROLE_COMPANY
            )
            c.password = "******"
            db.session.add(c)
            try:
                db.session.commit()
            except:
                db.session.rollback()
                continue

            # 创建企业信息
            d = Company(
                name=company["name"],
                email=c.email,
                logo=company["logo"],
                site=company["site"],
                location=company["localtion"],
                description = company["description"],
                about = company["about"].strip("0/1000取消保存").strip("关于我们"),
                tags=company["tags"]
            )
            d.user_id = c.id
            db.session.add(d)
            db.session.commit()

            # 发布企业职位
            job_list = self.get_job(company["id"])
            for item in job_list:
                job = Job(
                    name=item["name"],
                    salary_low=int(item["salary_low"].strip("k")) * 1000,
                    salary_high=int(item["salary_high"].strip("k")) * 1000,
                    location=item["location"],
                    tags=item["tags"],
                    experience_requirement=item["experience_requirement"],
                    degree_requirement=item["degree_requirement"],
                    description =item["raw_description"]
                )

                job.company_id = d.id

                db.session.add(job)
                db.session.commit()
Beispiel #12
0
 def update_company(self,company):
     company.name = self.name.data
     company.email = self.email.data
     if self.password.data:
         company.password = self.password.data
     if company.users:
         users = company.users
     else:
         user = User()
         user.id = company.users_id
     self.populate_obj(user)
     db.session.add(company)
     db.session.add(user)
     db.session.commit()
Beispiel #13
0
    def create_user(self, register_role):
        user = User(username=self.username.data,
                    email=self.email.data,
                    password=self.password.data,
                    role=register_role)

        # 如果是求职者, 则注册时也同时创建它的profile
        if register_role == 30:
            user.profile = HunterProfile(name=user.username, email=user.email)
            user.profile.set_password_fromuser(user)
            db.session.add(user.profile)

        db.session.add(user)
        db.session.commit()
        return user
Beispiel #14
0
    def create_user(self):
        user = User()
        user.username = self.name.data
        user.email = self.email.data
        user.password = self.password.data

        try:
            db.session.add(user)
            db.session.commit()
        except:
            db.session.rollback()

        u = User.query.filter_by(email=user.email).first()
        self.create_resume(u)
        return user
Beispiel #15
0
    def create_company(self):
        user = User()
        user.username = self.companyname.data
        user.email = self.email.data
        user.password = self.password.data
        user.role = User.ROLE_COMPANY

        db.session.add(user)
        db.session.commit()

        company = ComInfo()
        company.user = user

        db.session.add(company)
        db.session.commit()
Beispiel #16
0
    def create_user(self):
        user = User()
        self.populate_obj(user)
        db.session.add(user)
        db.session.commit()

        return user
def iter_admin():
    yield User(
            username=username,
            email=email,
            password=password,
            role=30,
        )
Beispiel #18
0
 def create_user(self):
     user = User(username=self.username.data,
                 email=self.email.data,
                 password=self.password.data) #不用重新设置,默认就是我们需要的值
     db.session.add(user)
     db.session.commit()
     return user
Beispiel #19
0
def generate_data():
    db.create_all()
    with open(os.path.join(os.path.dirname(__file__), '.', 'datas',
                           'data.json'),
              'r',
              encoding='UTF-8') as file:
        datas = json.load(file)
    for data in datas:
        if not data['company_name']:
            data['company_name'] = fake.name()
        user = User(username=data['company_name'],
                    email=fake.word() + '@163.com',
                    password='******',
                    role=User.ROLE_COMPANY)

        company = ComInfo(com_phone=data['phone'],
                          com_web=data['website'],
                          com_location=data['company_locate'],
                          com_logo=data['company_logo'],
                          com_desc_less=data['desc_simple'],
                          com_desc_more=data['desc_more'],
                          user=user)

        db.session.add(user)
        db.session.add(company)
        for key, value in data['jobs'].items():
            if not key:
                key = fake.word()
            job = JobInfo(title=key,
                          work_place='not on earth',
                          tags='one,two,three',
                          company=company)
            db.session.add(job)

        db.session.commit()
Beispiel #20
0
 def create_user(self):   #在数据中创建User
     user = User(username=self.name.data,
                 email=self.email.data,
                 password=self.password.data) #将form 相应数据传入
     db.session.add(user)
     db.session.commit()
     return user
Beispiel #21
0
def register():
    form = RegisterForm()
    if form.validate_on_submit():
        form.create_user(User())
        flash('用户注册成功,请登录!', 'success')
        return redirect(url_for('.login'))
    return render_template('register.html', form=form)
Beispiel #22
0
 def add_user(self):
     user = User()
     self.populate_obj(user)
     db.session.add(user)
     db.session.commit()
     flash("添加成功", 'success')
     return user
Beispiel #23
0
def iter_users():
    for user in user_lst:
        yield User(name=user[0],
                   username=user[1],
                   email=user[2],
                   password=user[3],
                   role=user[4])
Beispiel #24
0
class CompanyCreateForm(CompanyBaseForm):
    is_new_user = True
    user = User()

    username = StringField('用户名', validators=[DataRequired(message='用户名不可为空'), Length(3, 24)])
    password = PasswordField('密码', validators=[DataRequired(message='密码不可为空'), Length(6, 24, message='密码长度应为6~24个字符')])
    repeat_password = PasswordField('重复密码', validators=[DataRequired(message='密码不可为空'), EqualTo('password', message='两次输入的密码不一致')])
    submit = SubmitField('创建用户')

    def __init__(self):
        """
        初始化,主要为了把重写的 Fields 移到前面
        """
        super(CompanyCreateForm, self).__init__()
        self._fields.move_to_end(self.repeat_password.name, last=False)
        self._fields.move_to_end(self.password.name, last=False)
        self._fields.move_to_end(self.email.name, last=False)
        self._fields.move_to_end(self.username.name, last=False)
        self._fields.move_to_end(self.submit.name, last=True)

    def validate_email(self, field):
        if User.query.filter_by(email=field.data).first():
            raise ValidationError('邮箱已经存在')

    def validate_username(self, field):
        user = User.query.filter_by(username=field.data).first()
        if user:
            raise ValidationError('用户名已存在')

    def validate_name(self, field):
        company = Company.query.filter_by(name=field.data).first()
        if company:
            raise ValidationError('该公司已注册')
Beispiel #25
0
 def create_user(self):
     user = User(name=self.name.data,
                 email=self.email.data,
                 password=self.password.data)
     db.session.add(user)
     db.session.commit()
     return user
Beispiel #26
0
    def add_company_user(self):
        company = Company()
        user = User()

        self.populate_obj(company)
        self.populate_obj(user)
        user.company = company
        user.role = user.ROLE_COMPANY

        db.session.add(user)
        db.session.add(company)
        db.session.commit()

        flash("更新成功", 'success')

        return [user, company]
Beispiel #27
0
def fake_admin():
    admin = User(username='******',
                 email='*****@*****.**',
                 password='******',
                 role=30)

    db.session.add(admin)
    db.session.commit()
Beispiel #28
0
def company_register():
    form = RegisterForm()
    form.username.label = u'企业名称'
    if form.validate_on_submit():
        form.create_user(User(role=User.ROLE_COMPANY))
        flash('企业注册成功,请登录!', 'success')
        return redirect(url_for('.login'))
    return render_template('company_register.html', form=form)
Beispiel #29
0
 def create_company(self):
     company = User(username=self.username.data,
                    email=self.email.data,
                    password=self.password.data,
                    role=20)
     db.session.add(company)
     db.session.commit()
     return company
Beispiel #30
0
 def createUser(self, role: UserRole):
     user = User.createFrom(name=self.name.data,
                            email=self.email.data,
                            password=self.password.data,
                            role=role)
     db.session.add(user)
     db.session.commit()
     return user
Beispiel #31
0
def iter_user():
    for i in range(60):
        yield User(
                name=str(f.random_int())+f.user_name(),
                email=f.ascii_email(),
                password='******',
                role=f.random_element(elements=(10,20,30)),
                )
Beispiel #32
0
 def create_user(self, register_role):
     user = User(username=self.username.data,
                 email=self.email.data,
                 password=self.password.data,
                 role=register_role)
     db.session.add(user)
     db.session.commit()
     return user