{{{ #!rst .. ====================== Database API reference ====================== .. sidebar:: Referência da API de Banco de Dados :subtitle: tradução para o português. Documento original: `Django Database API`_ Tradução: mario `` Referente a revisão: 3896 .. _Django Database API: http://www.djangoproject.com/documentation/db_api/ .. contents:: **Conteúdos do capítulo** =================================== Referência da API de Banco de Dados =================================== Este documento cobre a versão 0.95 de Django e a versão do desenvolvimento. Docs anteriores: `0.90`_, `0.91`_ ---------------------------------------------------------------------------------------------------------------- .. _0.90: http://www.djangoproject.com/documentation/0_90/ .. _0.91: http://www.djangoproject.com/documentation/0_91/ Uma vez que você criou seus `data models`_, Django fornece automaticamente uma API de abstração de banco de dados para você criar, recuperar, atualizar e deletar objetos. Este documento descreve esta API . .. _`data models`: http://www.djangoproject.com/documentation/model_api/ Durante toda esta referência, iremos fazer referências aos modelos descritos abaixo, que compreenderiam uma aplicação de weblog. .. code-block:: python class Blog(models.Model): name = models.CharField(maxlength=100) tagline = models.TextField() def __str__(self): return self.name class Author(models.Model): name = models.CharField(maxlength=50) email = models.URLField() def __str__(self): return self.name class Entry(models.Model): blog = models.ForeignKey(Blog) headline = models.CharField(maxlength=255) body_text = models.TextField() pub_date = models.DateTimeField() authors = models.ManyToManyField(Author) [imperfeita] def __str__(self): return self.name Criando objetos ================ Para representar tabelas do banco de dados em objetos do Python, Django usa um sistema intuitivo: Uma classe modelo representa uma tabela da banco de dados, e uma instância dessa classe representa um registro particular na tabela do banco de dados Para criar um objeto, instancie-o usando argumentos da classe modelo, então chame ``save()`` para salva-lo no banco de dados. Você importa a classe modelo de onde quer que ela esteja dentro do Python path, como é de se esperar. (Nós destacamos isto aqui porque em versões anteriores do Django tinhamos importações de classes modelo conturbadas.) Assumindo que os modelos estejam em um arquivo ``mysite/blog/models.py``, segue o exemplo:: from mysite.blog.models import Blog b = Blog(name='Beatles Blog', tagline='All the latest Beatles news.') b.save() Isto executa uma declaração SQL ``INSERT`` por baixo do panos. Django não conecta ao banco de dados até que você se chame explicitamente ``save()``. O método ``save()`` não retorna valor algum. Para criar um objeto e salvá-lo, tudo em um único passo veja o método `create`_ . .. _`create`: http://www.djangoproject.com/documentation/db_api/#create-kwargs Auto incrementando chaves primárias ----------------------------------- }}} D E A R F R I E N D S: I have already translate more on this document, but didn't have more time to do all rST formating. I hope to finish the tranlating this week, since that happens i'll update this page.