def card(): if request.method == 'GET': card_from = CardForm() return render_template('cards.html', form=card_from) else: title = request.form.get('title') content = request.form.get('content') note = Note(title=title, content=content) user_id = session.get('user_id') user = User.query.filter(User.id == user_id).first() note.author = user db.session.add(note) db.session.commit() return redirect(url_for('note.notes'))
def mutate(self, info, title, body, username): user = User.query.filter_by(username=username).first() note = Note(title=title, body=body) if user is not None: note.author = user db.session.add(note) db.session.commit() return CreateNote(note=note)
def test_note(self): s = b'<note name="love letter to Jane"><text color="red">Dear Jane,'\ b'</text><text fontsize="16">I LOVE YOU!</text></note>' xml = ET.fromstring(s) n = Note(xml) self.assertEqual(n.attributes, {'name': 'love letter to Jane'}) self.assertEqual(ET.tostring(n.to_xml()), s) self.assertEqual(len(n.Texts), 2)
def index(request): # Cria uma lista de <li>'s para cada anotação # Se tiver curiosidade: https://docs.python.org/3/tutorial/datastructures.html#list-comprehensions # A string de request sempre começa com o tipo da requisição (ex: GET, POST) if request.startswith('POST'): request = request.replace('\r', '') # Remove caracteres indesejados # Cabeçalho e corpo estão sempre separados por duas quebras de linha partes = request.split('\n\n') corpo = partes[1] params = {} # Preencha o dicionário params com as informações do corpo da requisição # O dicionário conterá dois valores, o título e a descrição. # Posteriormente pode ser interessante criar uma função que recebe a # requisição e devolve os parâmetros para desacoplar esta lógica. # Dica: use o método split da string e a função unquote_plus for chave_valor in corpo.split('&'): chave_valor = unquote_plus(chave_valor) split2 = chave_valor.split('=') params[split2[0]] = split2[1] note = Note() note.title = params['titulo'] note.content = params['detalhes'] if "update" in params.keys(): note.id = params["update"] db.update(note) print(params["update"]) print(id) elif "delete" in params.keys(): db.delete(params["delete"]) else: db.add(note) return build_response(code=303, reason='See Other', headers='Location: /') elif request.startswith('GET'): note_template = load_template('components/note.html') notes_li = [ note_template.format(title=note.title, details=note.content, id=note.id) for note in db.get_all() ] notes = '\n'.join(notes_li) return build_response(load_template('index.html').format(notes=notes))
def post(self): json_data = request.get_json() if not json_data: return {'message': 'No input data provided'}, 400 # Validate and deserialize input try: data, errors = note_schema.load(json_data) if not data.get('title') or not data.get('text'): raise ValidationError('Data not provided') except ValidationError as err: return err.messages, 422 db_session = Session() # Create new note note = Note(id=str(uuid.uuid4()), title=data.get('title'), text=data.get('text'), date_create=int(time.time()), date_update=int(time.time())) db_session.add(note) db_session.commit() result, errors = note_schema.dump( db_session.query(Note).filter(Note.id == note.id).first()) db_session.close() return result, 201
def index(request, db): # A string de request sempre começa com o tipo da requisição (ex: GET, POST) if request.startswith('POST'): request = request.replace('\r', '') # Remove caracteres indesejados # Cabeçalho e corpo estão sempre separados por duas quebras de linha partes = request.split('\n\n') corpo = partes[1] params = {} p1 = partes[1] # Preencha o dicionário params com as informações do corpo da requisição # O dicionário conterá dois valores, o título e a descrição. # Posteriormente pode ser interessante criar uma função que recebe a # requisição e devolve os parâmetros para desacoplar esta lógica. # Dica: use o método split da string e a função unquote_plus print('p1', p1) if (p1.startswith('id')): idd = p1[3:] db.delete(idd) elif (p1.startswith('update')): newNote = {} for chave_valor in p1.split('&'): if 'titulo' in chave_valor: titulo = chave_valor[7:] titulo = urllib.parse.unquote_plus(titulo) newNote['title'] = titulo elif 'id' in chave_valor: aiD = chave_valor[3:] newNote['id'] = aiD elif 'detalhes' in chave_valor: detalhes = chave_valor[9:] detalhes = urllib.parse.unquote_plus(detalhes) newNote['content'] = detalhes db.update(titulo, detalhes, aiD) else: for chave_valor in corpo.split('&'): if 'titulo' in chave_valor: titulo = chave_valor[7:] titulo = urllib.parse.unquote_plus(titulo) params['titulo'] = titulo elif 'detalhes' in chave_valor: detalhes = chave_valor[9:] detalhes = urllib.parse.unquote_plus(detalhes) params['detalhes'] = detalhes note = Note(title=params['titulo'], content=params['detalhes']) db.add(note) # O RESTO DO CÓDIGO DA FUNÇÃO index CONTINUA DAQUI PARA BAIXO.. note_template = load_template('components/note.html') notes_li = [ note_template.format(id=dados.id, title=dados.title, details=dados.content) for dados in load_data(db) ] notes = '\n'.join(notes_li) return load_template('index.html').format(notes=notes).encode()
def get_note_from_post(corpo): note = [] for chave_valor in corpo.split('&'): split = chave_valor.split('=') key = unquote_plus(split[0]) value = unquote_plus(split[1]) note.append(value) return Note(note[0], note[1], note[2])
def save_note(): myNote = Note(request.form['title'], request.form['text'], session['user_id']) # Create db.session.add(myNote) try: db.session.commit() except: db.session.rollback() return redirect(url_for('dashboard'))
def index(request): db = Database('banco-notes') if request.startswith('POST'): params = save_params( request ) #params = {'titulo':algm coisa, 'detalhes':outra coisa, 'id':outra coisa} #add_to_jsonfile(params, 'notes.json') if 'deletar' in params.keys(): db.delete(params['deletar']) #id elif params['id'] == 'None': db.add( Note(title=params['titulo'], content=params['detalhes'], id=params['id'])) else: db.update( Note(title=params['titulo'], content=params['detalhes'], id=params['id'])) return build_response(code=303, reason='See Other', headers='Location: /') else: # Cria uma lista de <li>'s para cada anotação print('notas do banco: ', db.get_all()) note_template = load_template('components/note.html') notes_li = [ note_template.format(id=note.id, title=note.title, details=note.content) for note in db.get_all() ] notes = '\n'.join(notes_li) print('----------------------------------------') return build_response(load_template('index.html').format(notes=notes))
def post(self, username): if username != auth.current_user().username: abort(401) args = self.reqparse.parse_args() try: user = auth.current_user() course_id = args['course_id'] print("Course id = ", course_id) if course_id is not None: course = user.courses.filter_by(id=course_id).first() if not course: abort(422) print("Course found: ", course) note = Note(text=args['text'], course=course, user_id=user.id) else: note = Note(text=args['text'], user_id=user.id) user.notes.append(note) db.session.add(note) db.session.commit() return note.to_dict() except SQLAlchemyError as e: abort(422)
def add_new_note(): form = AddNoteForm() if form.validate_on_submit(): course_name = form.course_name.data n_translated = translation.createTranslation(form.note.data, "EN") n_translated = n_translated.replace(''', '\'') new_note = Note(form.course_key.data, course_name.lower(), n_translated) note_key = notesManager.add_note_to_db(new_note) flash( 'Note Added: With course key: {} and Course Name: {} . Share your notes with your friends or save it for future use: {}' .format(form.course_key.data, form.course_name.data, note_key)) auto_gen_super_note(course_name.lower()) return redirect('/index') return render_template('add_note.html', title='Add New Note', form=form)
def post_into_note(corpo): new_note = [] for chave_valor in corpo.split('&'): unquote = urllib.parse.unquote_plus(chave_valor).split('=') print('Unquote: {}'.format(unquote)) if unquote[0] == 'deleteNote': db.delete(unquote[1]) return None else: valor = unquote[1] print('Valor: {}'.format(valor)) new_note.append(valor) print("New note: {}".format(new_note)) return Note(new_note[0], new_note[1], new_note[2])
def update_Entry(params, database_db): db = Database(database_db) val_list = list(params.values()) db.update(Note(title=val_list[0], content=val_list[1], id=val_list[2]))
def add_Entry(params, database_db): db = Database(database_db) val_list = list(params.values()) db.add(Note(title=val_list[0], content=val_list[1]))
from database import Database, Note #Após executar este programa, um arquivo chamado banco.db deve ter aparecido na sua pasta db = Database('banco') #db.add(Note(title='Pão doce', content='Abra o pão e coloque o seu suco em pó favorito.')) #db.add(Note(title=None, content='Lembrar de tomar água')) notes = db.get_all() for note in notes: print(f'Anotação {note.id}:\n Título: {note.title}\n Conteúdo: {note.content}\n') db.update(Note(title='cabeleleila leila', content='hidratracao para o cabelo e para as unhas', id=4)) db.delete(1) db.delete(2) db.delete(3) notes = db.get_all() for note in notes: print(f'Anotação {note.id}:\n Título: {note.title}\n Conteúdo: {note.content}\n')
from database import Database, Note db = Database('banco') db.add( Note(title='Pão doce', content='Abra o pão e coloque o seu suco em pó favorito.')) db.add(Note(title='Lembrete', content='Lembrar de tomar água')) notes = db.get_all() for note in notes: print( f'Anotação {note.id}:\n Título: {note.title}\n Conteúdo: {note.content}\n' )
from utils import load_data from database import Database, Note db = Database("notes") # Filling the table for valores in load_data('notes.json'): db.add(Note(None, valores['titulo'], valores['detalhes']))