Exemple #1
0
def index():
    if current_user.is_seeker:
        page = request.args.get('page', 1, type=int)
        pagination = Resume.query.filter_by(
            seeker_id=current_user.seeker.id).paginate(page=page,
                                                       per_page=10,
                                                       error_out=False)
        return render_template('seeker/index.html', pagination=pagination)
    elif current_user.is_company:
        company = current_user.company
        page = request.args.get('page', 1, type=int)
        query = Job.query.filter_by(company_id=current_user.company.id)
        pagination = Job.query_pagination(query, page)

        return render_template('company/profile.html',
                               pagination=pagination,
                               company=company)
Exemple #2
0
def index():
    page = request.args.get('page', 1, type=int)
    query = Job.query.filter_by(online=True).order_by(Job.updated_at.desc())
    keyword = request.args.get('keyword') or request.form.get('keyword')
    # 如果是点的搜索下面的标签链接过来的话会带有这个参数
    tag_id = request.args.get('tag_id', None, int)
    # 获取被职位引用数最多的前5个标签
    tags = Tag.get_have_jobs_count_top_n(5)
    # 工资范围选项
    salarys = Job.get_salary_choices()
    query_salary = request.args.get('salary', None)

    # 去掉前后空格
    if isinstance(keyword, str):
        keyword = keyword.strip()
    # 关键字搜索
    if keyword:
        query = Job.query.join(Company).filter(
            and_(
                Job.online,
                or_(Job.name.contains(keyword),
                    Company.name.contains(keyword)))).order_by(
                        Job.updated_at.desc())
        page = 1
    elif tag_id:
        # 标签职位查询
        query = Job.query.join(Job.tags).filter(
            and_(Tag.id == tag_id, Job.online))
    elif query_salary:
        query = Job.query.filter(and_(Job.online, Job.salary == query_salary))

    pagination = Job.query_pagination(query, page, per_page=12)
    return render_template('job/index.html',
                           pagination=pagination,
                           tags=tags,
                           salarys=salarys)