コード例 #1
0
def new():
    """ Creates new todo item
    If the method was GET it should show new item form.
    If the method was POST it shold create and save new todo item.
    """
    if request.method == 'POST':
        error = False
        title, due_date = request.form['title'], request.form['due_date']
        if not title:
            flash(u'Please enter the title', 'error')
            error = True
        if due_date:
            try:
                due_date = datetime.datetime.strptime(due_date,
                                                      date_format()).date()
            except ValueError:
                flash(u'Please enter valid date', 'error')
                error = True
        else:
            due_date = None
        if not error:
            todo = Todo(name=title, due_date=due_date)
            db.session.add(todo)
            db.session.commit()
            flash(u'Record was successfully added', 'success')
            return redirect(url_for('show_all'))
    return render_template('form.html', date_format=date_format())
コード例 #2
0
 def post(self):
     input_json = request.get_json()
     try:
         todo = Todo(task=input_json['task']).save()
     except NotUniqueError:
         raise BadRequest('Redundant Todo')
     return {'success': True}
コード例 #3
0
 def put(self, todo_id):
     input_json = request.get_json()
     try:
         todo = Todo(id=todo_id).save()
     except DoesNotExist:
         raise BadRequest('Invalid Todo Id')
     todo.update(completed=input_json['completed'], task=input_json['task'])
     return {'success': True}
コード例 #4
0
ファイル: todo_routes.py プロジェクト: wb8736/pythonLearning
def route_todo_add(request):
    uid = current_user(request)
    form = request.form()
    form["uid"] = uid
    todo = Todo(form)
    todo.ct = todo.set_time()
    todo.ut = todo.ct
    todo.model_add()
    return redirect(request.headers, "/todo")
コード例 #5
0
def create(todo):
    """
    Create a new todo
    Parameters
    ----------
    todo: dict
        Todo dictionary
    """
    return loads(Todo(**todo).save().to_json(), object_hook=default)
コード例 #6
0
def addTodo():
    if request.method == 'POST':
        title = request.form['title']
        desc = request.form['desc']
        todo = Todo(title, desc)
        db.session.add(todo)
        db.session.commit()
        return redirect('/')
    return render_template('addTodo.html')
コード例 #7
0
def create_todo():
    name = request.form.get('name')
    status = request.form.get('status')

    todo = Todo(name=name, status=status)

    db.session.add(todo)
    db.session.commit()

    return redirect(url_for('todos', todo_id=todo.id))
コード例 #8
0
ファイル: todo.py プロジェクト: michaeljacc/work
def add():
    form = request.form
    u = current_user()
    if u is None:
        return redirect(url_for('/'))
    t = Todo(form)
    t.user_id = u.id
    t.save()
    print(u, t, u.id)
    return redirect(url_for('.index', user_id=u.id))
コード例 #9
0
    def findCoupledTodos(self):
        old_search = {}
        new_search = {}
        coupled_dict = {}
        #subtract 2 from line numbers because patch starts with patch metadata
        old_idx = self.old_version_line_start
        new_idx = self.new_version_line_start
        for line in self.new_version:
            if line[0] != "+" and self.containsTodo(line):
                index = Patch.findTodo(line)
                todo_text = line[index:]
                new_todo = Todo(headline=todo_text,
                                committed_by=self.committed_by,
                                account=self.account,
                                line_number=new_idx,
                                filepath=self.file_path,
                                text=todo_text,
                                repo=self.repo)
                new_search[new_idx] = new_todo
            new_idx += 1

        for line in self.old_version:
            if line[0] != "-" and self.containsTodo(line):
                index = Patch.findTodo(line)
                todo_text = line[index:]
                old_todo = Todo(headline=todo_text,
                                committed_by=self.committed_by,
                                account=self.account,
                                line_number=old_idx,
                                filepath=self.file_path,
                                text=todo_text,
                                repo=self.repo)
                old_search[old_idx] = old_todo
            old_idx += 1

        for old_key in old_search:
            for new_key in new_search:
                if old_search[old_key].headline == new_search[
                        new_key].headline:
                    coupled_dict[(old_key, new_key)] = \
                        (old_search[old_key], new_search[new_key])

        return coupled_dict
コード例 #10
0
def update(id):
    #form = request.form
    form = request.get_json()
    t = Todo.query.get(id)
    t1 = Todo(form)
    if t1.valid():
        t.update(form)
        return api_response(True, data=t.json())
    else:
        return api_response(False, message=t1.error_message())
コード例 #11
0
ファイル: todo.py プロジェクト: Mganzzzzz/flask-frame
def todo_add(form):
    log('debug form')
    u = current_user()
    form = RegistrationForm(request.form)
    todo = Todo(form)
    chatValid = todo.valid()
    if chatValid:
        todo.save()
    else:
        return render_template('register.html')
コード例 #12
0
def add():
    #form = request.form
    form = request.get_json()
    t = Todo(form)
    print('form', form)
    if t.valid():
        t.save()
        return api_response(True, data=t.json())
    else:
        return api_response(False, message=t.error_message())
コード例 #13
0
    def findCoupledTodos(self):
        old_search = {}
        new_search = {}
        coupled_dict = {}

        #subtract 2 from line numbers because patch starts with patch metadata
        for i, line in enumerate(self.new_version):
            if line[0] != "+" and containsTodo(line):
                index = findTodo(line)
                todo_text = line[index:]
                line_num = self.new_version_start_line + i

                new_todo = Todo(headline     = todo_text,
                                committed_by = self.committed_by,
                                account      = self.account,
                                line_number  = line_num,
                                filepath     = self.file_path,
                                text         = todo_text,
                                repo         = self.repo)
                new_search[line_num] = new_todo

        for i, line in enumerate(self.old_version):
            if line[0] != "-" and containsTodo(line):
                index = findTodo(line)
                todo_text = line[index:]
                line_num = self.old_version_start_line + i

                new_todo = Todo(headline     = todo_text,
                                committed_by = self.committed_by,
                                account      = self.account,
                                line_number  = line_num,
                                filepath     = self.file_path,
                                text         = todo_text,
                                repo         = self.repo)
                old_search[line_num] = old_todo

        for old_key in old_search:
            for new_key in new_search:
                if old_search[old_key].headline == new_search[new_key].headline:
                    coupled_dict[(old_key, new_key)] = (old_search[old_key], new_search[new_key])

        return coupled_dict
コード例 #14
0
def add(request):
    # 得到浏览器发送的表单, 浏览器用 ajax 发送 json 格式的数据过来
    # 所以这里我们用新增加的 json 函数来获取格式化后的 json 数据
    form = request.json()
    # 创建一个 todo
    u = current_user(request)
    t = Todo(form)
    t.user_id = u.id
    t.save()
    # 把创建好的 todo 返回给浏览器
    return json_response(t.json())
コード例 #15
0
def add():
    # 得到浏览器发送的表单, 浏览器用 ajax 发送 json 格式的数据过来
    # 所以这里用新增加的 json 函数来获取格式化后的 json 数据
    form = request.get_json()
    # 创建一个 todo
    u = current_user()
    t = Todo(form)
    t.user_id = u.id
    t.save()
    # 把创建好的 todo 返回给浏览器
    return jsonify(t.json())
コード例 #16
0
def create_todos(current_user):
    new_todo = Todo(
        text=request.json['text'],
        complete=request.json['complete'],
        user_id=current_user.id
    )

    db.session.add(new_todo)
    db.session.commit()

    return TodoSchema().jsonify(new_todo)
コード例 #17
0
def add():
    """ Creates new todo item
    If the method was GET it should show new item form.
    If the method was POST it shold create and save new todo item.
    """
    if request.method == 'GET':
        return render_template('add.html')
    elif request.method == 'POST':
        new_thing = Todo(request.form['name'])
        new_thing.save()
    return redirect(url_for('list'))
コード例 #18
0
ファイル: main.py プロジェクト: Trufolz/ToDoList
def add():
    """ Creates new todo item
    If the method was GET it should show new item form.
    If the method was POST it should create and save new todo item.
    """
    if request.method == "GET":

        return render_template("add.html")

    if request.method == "POST":
        id = ''
        name = request.form["name"]
        status = request.form.get("status")
        if status == None:
            new_todo = Todo(id, name, 0)
            Todo.add(new_todo)
        elif status == "on":
            new_todo = Todo(id, name, 1)
            Todo.add(new_todo)

        return redirect(url_for('list'))
コード例 #19
0
    def list(self):
        result = self.execute(
            'SELECT id, name, status FROM todos ORDER BY id desc'
        )
        todos = []

        for row in result:
            todo = Todo(id=row[0], name=row[1], status=row[2])
            todos.append(todo) 
            
        
        return todos
コード例 #20
0
def todo_add(request):
    """
    用于增加 todo 的路由函数
    """
    u = current_u(request)
    u_id = u.id
    if request.method == 'POST':
        form = request.form()
        form.update({'user_id': u_id})
        t = Todo(form)
        Todo.add(t)
    return redirect('/todo')
コード例 #21
0
ファイル: main.py プロジェクト: Trufolz/ToDoList
def edit(todo_id):
    """
    Edits todo item with selected id in the database
    If the method was GET it should show todo item form.
    If the method was POST it should update todo item in database.
    """
    if request.method == "GET":
        todo_to_edit = Todo.get_by_id(todo_id)
        return render_template("edit.html", todo_to_edit=todo_to_edit)

    elif request.method == "POST":
        edited_name = request.form["name"]
        edited_status = request.form.get("status")

        if edited_status == None:
            edited_todo = Todo(todo_id, edited_name, 0)
            Todo.edit(edited_todo)
        elif edited_status == "on":
            edited_todo = Todo(todo_id, edited_name, 1)
            Todo.edit(edited_todo)

        return redirect(url_for("list"))
コード例 #22
0
ファイル: views.py プロジェクト: shannon7777/flask-todolist
def create_todo():
    data = request.get_json()
    content = data['content']
    new_todo = Todo(content=content, is_completed=False, list_id=6)

    if new_todo.save():
        flash('New to-do created!', 'success')
    else:
        flash('Unsuccessful', 'danger')

    result = jsonify({'message': 'Todo created', 'content': content})

    return result
コード例 #23
0
ファイル: todo.py プロジェクト: civa86/py-rest
def create():
    if request.json is None:
        return jsonify({'error': 'Missing Request Body'}), 400

    task = request.json.get('task')
    if not task:
        return jsonify({'error': 'Missing Task'}), 400

    todo = Todo(task)
    db_session.add(todo)
    db_session.commit()

    return jsonify(todo.serialize)
コード例 #24
0
def add(request):
    """
    接受客户端发送的 json 数据, 添加数据并
    将新创建的 todo 数据返回给前端
    """
    # 得到 body 里面的数据
    user_id = current_user_id(request)
    form = request.json_parse()
    t = Todo(form)
    # 设置 user_id
    t.user_id = user_id
    Todo.add(t)
    # 返回新添加的数据
    return json_response(t.json_parse())
コード例 #25
0
def add():
    """ Creates new todo item
    If the method was GET it should show new item form.
    If the method was POST it shold create and save new todo item.
    """
    if request.method == 'POST':
        item_name = request.form['item_name']
        item_priority = request.form['priority']
        item_due_date = request.form['due_date'] if request.form['due_date'] else None
        item_description = request.form['description'] if request.form['description'] else None
        if item_due_date:
            year, month, day = list(map(lambda x: int(x), item_due_date.split('-')))
            if datetime.date(year, month, day) < datetime.date.today():
                flash('Date should be current or future')
                temp_item = Todo(item_name, priority=item_priority, description=item_description)
                return render_template('todo_form.html', action=url_for('add'),
                                       submit_title="Add", item=temp_item)
        new_todo = Todo(item_name, due_date=item_due_date, priority=item_priority,
                        owner_id=session['user_id'], description=item_description)
        new_todo.save()
        flash("New task was added!")
        return redirect('/')
    if request.method == 'GET':
        return render_template('todo_form.html', action=url_for('add'), submit_title="Add", is_edit=False)
コード例 #26
0
ファイル: main.py プロジェクト: kborowska20/python-flask
def add():
    """ Creates new todo item
    If the method was GET it should show new item form.
    If the method was POST it shold create and save new todo item.
    """
    if request.method == 'GET':
        return render_template('add.html')

    elif request.method == 'POST':

        name = request.form['name']
        deadline = request.form['deadline']
        done = request.form.get('done') != None
        new_item = Todo(None, name, deadline, done)
        new_item.save()
        return redirect(url_for('list'))
コード例 #27
0
def add(request):
    """
    用于增加新 todo 的路由函数
    """
    uname = current_user(request)
    u = User.find_by(username=uname)
    if u is None:
        return redirect('/login')
    if request.method == 'POST':
        # 'title=aaa' ==> {'title': 'aaa'}
        form = request.form()
        t = Todo(form, u.id)
        t.save()
    # 浏览器发送数据过来被处理后, 重定向到首页
    # 浏览器在请求新首页的时候, 就能看到新增的数据了
    return redirect('/todo')
コード例 #28
0
 def findDeletedTodos(self):
     idx = self.old_version_line_start
     deleted_todo_dict = {}
     for line in self.old_version:
         if line[0] == "-" and self.containsTodo(line):
             index = Patch.findTodo(line)
             todo_text = line[index:]
             deleted_todo = Todo(headline=todo_text,
                                 committed_by=self.committed_by,
                                 account=self.account,
                                 line_number=idx,
                                 filepath=self.file_path,
                                 text=todo_text,
                                 repo=self.repo)
             deleted_todo_dict[idx] = deleted_todo
         idx += 1
     return deleted_todo_dict
コード例 #29
0
    def findDeletedTodos(self):
        deleted_todos = {}
        for i, line in enumerate(self.new_version):
            if line[0]=="-" and containsTodo(line):
                index = findTodo(line)
                todo_text = line[index:]
                line_num = self.old_version_start_line + i

                new_todo = Todo(headline     = todo_text,
                                committed_by = self.committed_by,
                                account      = self.account,
                                line_number  = line_num,
                                filepath     = self.file_path,
                                text         = todo_text,
                                repo         = self.repo)
                new_todos[line_num] = new_todo

        return deleted_todos
コード例 #30
0
ファイル: app.py プロジェクト: haradashinya/stocker
def todos():
    data = request.form
    if request.method == "POST":
        todo = Todo(data["task"])
        db.session.add(todo)
        print("create new record")
        db.session.commit()
        return redirect("/")
    elif request.method == "PUT":
        id = data["todo_id"]
        t = db.session.query(Todo).filter_by(id == id).first()
        t.task = "fooo"
        db.session.add(t)
        db.session.commit()
    elif request.method == "DELETE":
        return "hello"

    return "a"