-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathnotebook.py
More file actions
101 lines (66 loc) · 2.03 KB
/
Copy pathnotebook.py
File metadata and controls
101 lines (66 loc) · 2.03 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
from flask import Flask, request
import json
from utils import NotesDB
app = Flask(__name__)
def get_notesdb():
notesDB = NotesDB()
notesDB.start()
return notesDB
@app.route('/')
def hello():
return 'Hello, World!'
@app.route('/notes')
def get_last_notes_id():
notesDB = get_notesdb()
response = {}
response["last_id"] = notesDB.getLastID()
return json.dumps(response)
@app.route('/notes/<int:note_id>')
def get_note(note_id):
notesDB = get_notesdb()
note = notesDB.getNoteById(note_id)
response = {}
if note is not None:
response["note"] = note.dumpToDict()
else:
response["note"] = None
return json.dumps(response)
@app.route('/notes/new', methods=('GET', 'POST'))
def create_note():
notesDB = get_notesdb()
response = {}
print(request.values)
title = request.values.get('title', "some name")
text = request.values.get('text', "some text")
note = notesDB.createAndAddNewNote(title, text)
response["status"] = 'OK'
response["note_id"] = note.getID()
return json.dumps(response)
@app.route('/notes/<int:note_id>', methods=('PUT',))
def update_note(note_id):
notesDB = get_notesdb()
note = notesDB.getNoteById(note_id)
response = {}
if note is not None:
print(request.values)
title = request.values.get('title', note.getTitle())
text = request.values.get('text', note.getText())
note.setTitle(title)
note.setText(text)
notesDB.updateNote(note)
response["status"] = 'OK'
response["note_id"] = note.getID()
else:
response["status"] = 'Note not found'
return json.dumps(response)
@app.route('/notes/<int:note_id>', methods=('DELETE',))
def delete_note(note_id):
notesDB = get_notesdb()
note = notesDB.getNoteById(note_id)
response = {}
if note is not None:
notesDB.deleteNoteById(note_id)
response["status"] = 'OK'
else:
response["status"] = 'Note not found'
return json.dumps(response)