コード例 #1
0
 def add_todo(description, user, todolist_id=None):
     todo_data = {
         'description': description,
         'todolist_id': todolist_id or TodoList().save().id,
         'creator': user.username
     }
     read_todo = Todo.from_dict(todo_data)
     return Todo.query.filter_by(id=read_todo.id).first()
コード例 #2
0
 def add_todo(description, user, todolist_id=None):
     todo_data = {
         "description": description,
         "todolist_id": todolist_id or TodoList().save().id,
         "creator": user.username,
     }
     read_todo = Todo.from_dict(todo_data)
     return Todo.query.filter_by(id=read_todo.id).first()
コード例 #3
0
def create_task(id):
    data = request.get_json() or {}
    if 'body' not in data or 'due_date' not in data:
        return bad_request('must include body and due_date fields')
    if not re.match('[0-9]{4}-[a-zA-Z]{3}-[0-3][0-9]-[0-2][0-9]-[0-5][0-9]', data['due_date']):
        return bad_request('due_date must follow the pattern of year-3LetterMonthCode-day-24HourClock-minute '
                           '(ie:2018-Dec-31-23-59)')
    datetime_obj = datetime.strptime(data['due_date'], '%Y-%b-%d-%H-%M')
    datetime_obj = datetime.astimezone(datetime_obj, pytz.UTC)
    data['user_id'] = id
    data['due_date'] = datetime_obj
    todo = Todo()
    todo.from_dict(data)
    db.session.add(todo)
    db.session.commit()
    response = jsonify(todo.to_dict())
    response.status_code = 201
    response.headers['Location'] = url_for('api.get_task', id=id, number=todo.id)
    return response