Menu
CoddyTech

Criando registros

Parte da seção Models e o Admin do Journey de Django da Coddy. Lição 7 de 23.

Sua estante precisa de livros novos, e você nunca escreverá SQL, a linguagem que os bancos de dados falam: o ORM do Django transforma chamadas Python em SQL. Todo modelo tem um gerenciador, Book.objects, seu caminho para a tabela dele. Neste capítulo, você escreve código ORM em explore.py. A execução adiciona nove livros e, em seguida, executa o arquivo da mesma forma que python manage.py shell < explore.py faria; o que ele imprime aparece no Console.

Book.objects.create(title="Beloved", author="Toni Morrison", year=1987, price="13.00")

create() cria uma linha e a salva em uma única etapa; um campo que você não informar recebe seu valor padrão. O mesmo processo em duas etapas, com uma alteração no meio:

silmarillion = Book(title="The Silmarillion", author="J.R.R. Tolkien", year=1977, price="10.50")
silmarillion.is_read = True
silmarillion.save()

Até que save() seja executado, o objeto existe apenas no Python e seu id é None.

challenge icon

Desafio

Fácil

Em explore.py, acima do print:

  • Adicione Project Hail Mary, de Andy Weir, de 2021, por 12.99, de ficção científica, em uma única etapa.
  • Adicione Klara and the Sun, de Kazuo Ishiguro, de 2021, por 11.50, criando um Book e salvando-o.

Pressione Executar. O Console mostra 11 books on the shelf, e a aba Dados lista as duas novas linhas.

Experimente você mesmo

from books.models import Book

# Adicione os dois livros aqui.


print(Book.objects.count(), "books on the shelf")

Todas as lições de Models e o Admin

Pratique por conta própria: Playground de Django