Web Development with Flask and Python (#4) – Database (ORM)

Posted by

Desenvolvimento Web com Flask e Python – Banco de Dados (ORM)

Desenvolvimento Web com Flask e Python – Banco de Dados (ORM)

O desenvolvimento web com Flask e Python é uma excelente escolha para criar aplicações web modernas e escaláveis. Uma parte fundamental desse desenvolvimento é o uso de um banco de dados, e uma ótima maneira de lidar com isso é por meio de um mapeador objeto-relacional (ORM).

O que é um ORM?

Um ORM é uma técnica de programação que permite a manipulação de dados em um banco de dados relacional por meio de objetos de programação. Com um ORM, o desenvolvedor não precisa escrever consultas SQL diretamente, o que torna o desenvolvimento mais fácil e menos propenso a erros.

Usando um ORM com Flask e Python

No desenvolvimento web com Flask e Python, uma biblioteca popular para lidar com ORM é o SQLAlchemy. O SQLAlchemy oferece uma maneira elegante de interagir com o banco de dados por meio de objetos Python, facilitando a escrita de consultas e a manipulação de dados.

Exemplo de uso do SQLAlchemy em um aplicativo Flask


from flask import Flask
from flask_sqlalchemy import SQLAlchemy

app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///exemplo.db'
db = SQLAlchemy(app)

class Usuario(db.Model):
id = db.Column(db.Integer, primary_key=True)
nome = db.Column(db.String(50))

# Criando o banco de dados
db.create_all()

# Criando um novo usuário
novo_usuario = Usuario(nome='João')
db.session.add(novo_usuario)
db.session.commit()

# Consultando todos os usuários
usuarios = Usuario.query.all()
for usuario in usuarios:
print(usuario.nome)

Com o uso do SQLAlchemy em um aplicativo Flask, é possível criar e manipular facilmente modelos de dados em um banco de dados relacional. Isso torna o desenvolvimento mais eficiente e intuitivo, permitindo que os desenvolvedores foquem mais na lógica da aplicação do que na manipulação direta do banco de dados.

Em resumo, o uso de um ORM como o SQLAlchemy em um aplicativo Flask é uma estratégia poderosa para lidar com bancos de dados em desenvolvimento web com Python. O ORM simplifica a comunicação com o banco de dados, tornando o processo mais eficiente e menos propenso a erros.

0 0 votes
Article Rating
24 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
@programadorpython
6 months ago

Atenção:

– Eu falo várias vezes no video "SQL Lite", mas no caso o nome é "SQLite".
– Em alguns momentos eu chamo o "customermanager.db" de tabela, mas é o Banco de Dados!
– Sobre o "db.create_tables([Cliente])", ele recria as tabelas caso não exista. Se voce adicionar ou mudar campos nas tabelas, voce precisa deletar o banco para ele recriar. Em outro video vamos falar sobre migrate.
– Se quiser entender melhor a ORM do Peewee:
– Se quer entender melhor o Python DotEnv (variaveis de ambiente):
– Sempre que eu escrever algo em minusculo ou maiusculo, siga exatamente o que eu fiz. As vezes estamos usando uma variavel e as vezes uma classe (como o Cliente, que é uma classe que extende o Model do Peewee). Fique atento a esse detalhe.
– O CharField tem um limite de 255 caracteres. O TextField não tem limite. Se você pesquisar "peewee fields" você encontra todos os tipos de campos das models do Peewee na documentação.
– Desculpe o "aaaa", "ééééé", "uuuuu". É um bug no meu cerebro

@flavioalmeida8861
6 months ago

Mais um ótimo vídeo com explicação clara e eficaz.

@harlleyhauradou
6 months ago

Ótima série de vídeos, ansioso pelo próximo ep.

@RememberM.
6 months ago

vou começar a estudar banco de dados agora, e to aprendendo python, html/css e depois vou aprender javascript, ai pensei em começar por MySQL, valeria a pena eu aprender o MySQL primeiro, depois o SQLite? ou apenas um está bom para o começo de uma carreira em desenvolvimento web?

@notebem
6 months ago

ElephantSQL anunciou que será extinto

@joaodejesus997
6 months ago

Sensacional!!!
Nunca vi um tutorial tão bem explicado!

@carlosmelo5050
6 months ago

Show. Aguardando o próximo vídeo, se puder colocar para acessar imagem do banco de dados. Obrigado

@angelorequenha9558
6 months ago

Ajudou demais, ótimo video

@brunoamaral1407
6 months ago

ótimo video, didatica incrivel

CONTINUA, POR FAVOR!

@LoganSOl
6 months ago

Qualidade demais, muito obrigado! Fiz um projeto crud recentemente mas com php quase puro(usando um pouco de ajax) e nem se compara a quantidade de coisa que tive que escrever e debugar vc fez parecer brincadeira, vou rever os videos e fazer um semelhante pois queria aprender framework e o flask parece muito simples e poderoso

@hidequelsantos4873
6 months ago

conteúdo excelente irmão, tenho aprendido bastante com teus videos, continue

@paulastefany7048
6 months ago

Muito bommm🏆
Sugestão: Poderia ter uma playlist de Api Rest, explicando o que é esse conceito e desenvolvendo um projeto top…
Vejo que é requisitado essa Api Rest.

@Asterisco892
6 months ago

Muito obrigado mano, vc é foda demais, continue

@universodosgames5794
6 months ago

cara uma coisa legal pra tu ensinar séria um sistema que é usado em vários sites, o sistema de verificação ou ativação de conta, tipo tu vai logar no site ai tu coloca o email, depois de colocar e le vai mandar um email pedindo pra tu confirmar a sua conta, tem vezes que eu um negócio que abre na tela do celular ou pelo gmail mesmo. isso pode ser importante também quando a pessoa esquece a senha

@FelipeSouza-lc8ob
6 months ago

Mn. Vc acha que aprender java script e python desenvolvendo um jogo tipo rpg 2d seria uma ideia inteligente? Já que eu tenho interesse em criar um jogo.

@nadanaonada5763
6 months ago

Mano vc conhece um site chamado Code Wars, nele tem varios exercícios de várias linguagens, Eu passo eu bom tempo resolvendo os exercícios la, eu perguntar se vc acha que resolve os exercícios, vai me ajudar a aprender a programar ?

@Tavugo
6 months ago

Opa @progamadorpython eu vou começar a série de flask agora,porque eu to vendo uma engine de cll,a its magic,mas já vou ver a série

@imperadorrezios9686
6 months ago

otimo video meu mano

@thomazdavid4562
6 months ago

irmao posta um video sobre games desktop para eu aprender e fazer uns projetinhos na zoera kkkk mt bom seus videos, parabens!!!

@davijose6414
6 months ago

Ótimo 👏👏