コード例 #1
0
ファイル: jobs_api.py プロジェクト: nanikon/mars_explorer
def create_job():
    if not request.json:
        return jsonify({'error': 'Empty request'})
    elif not all(key in request.json for key in [
            'id', 'job', 'team_leader_id', 'work_size', 'collaborators',
            'categories_id', 'is_finished'
    ]):
        return jsonify({'error': 'Bad request'})
    session = db_session.create_session()
    if session.query(Jobs).filter(Jobs.id == request.json['id']).first():
        return jsonify({'error': 'Id already exists'})
    job = Jobs()
    job.job = request.json['job']
    job.id = request.json['id']
    job.team_leader_id = request.json['team_leader_id']
    job.work_size = request.json['work_size']
    job.collaborators = request.json['collaborators']
    job.is_finished = request.json['is_finished']
    job.team_leader = session.query(User).filter(
        User.id == request.json['team_leader_id']).first()
    job.categories_id = request.json['categories_id']
    session.add(job)
    session.commit()
    for i in request.json['categories_id'].split(', '):
        job.categories.append(
            session.query(Category).filter(Category.id == int(i)).first())
    session.commit()
    return jsonify({'success': 'OK'})
コード例 #2
0
ファイル: main.py プロジェクト: nanikon/mars_explorer
def add_job():
    form = JobForm()
    if form.validate_on_submit():
        session = db_session.create_session()
        job = Jobs()
        job.team_leader_id = form.team_leader_id.data
        job.job = form.job.data
        job.work_size = form.work_size.data
        job.collaborators = form.collaborator.data
        job.is_finished = form.is_finished.data
        job.team_leader = session.query(User).filter(
            User.id == form.team_leader_id.data).first()
        job.categories_id = form.categories_id.data
        session.add(job)
        session.commit()
        for i in form.categories_id.data.split(', '):
            job.categories.append(
                session.query(Category).filter(Category.id == int(i)).first())
        session.commit()
        return redirect('/')
    return render_template('adding_job.html', title="Adding a Job", form=form)
コード例 #3
0
 def post(self):
     args = parser.parse_args()
     session = db_session.create_session()
     job = session.query(Jobs).get(args['id'])
     if job:
         abort(404, message=f"Id {args['id']} already exists")
     job = Jobs()
     job.job = args['job']
     job.id = args['id']
     job.team_leader_id = args['team_leader_id']
     job.work_size = args['work_size']
     job.collaborators = args['collaborators']
     job.is_finished = args['is_finished']
     job.team_leader = session.query(User).filter(
         User.id == args['team_leader_id']).first()
     job.categories_id = args['categories_id']
     session.add(job)
     session.commit()
     for i in args['categories_id'].split(', '):
         job.categories.append(
             session.query(Category).filter(Category.id == int(i)).first())
     session.commit()
     return jsonify({'success': 'OK'})