Changes between Initial Version and Version 1 of DocPtDatabaseAPI


Ignore:
Timestamp:
Oct 8, 2006, 2:28:22 AM (18 years ago)
Author:
mario.caseiro at gmail.com
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • DocPtDatabaseAPI

    v1 v1  
     1{{{
     2#!rst
     3
     4..
     5  ======================
     6  Database API reference
     7  ======================
     8
     9.. sidebar:: Referência da API de Banco de Dados
     10  :subtitle: tradução para o português.
     11
     12  Documento original: `Django Database API`_
     13 
     14  Tradução: mario `<mario.caseiro at gmail.com>`
     15 
     16  Referente a revisão: 3896
     17
     18.. _Django Database API: http://www.djangoproject.com/documentation/db_api/
     19
     20.. contents:: **Conteúdos do capítulo**
     21
     22===================================
     23Referência da API de Banco de Dados
     24===================================
     25
     26Este documento cobre a versão 0.95 de Django e a versão do desenvolvimento. Docs anteriores: `0.90`_, `0.91`_
     27----------------------------------------------------------------------------------------------------------------
     28
     29.. _0.90: http://www.djangoproject.com/documentation/0_90/
     30.. _0.91: http://www.djangoproject.com/documentation/0_91/
     31
     32Uma 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 .
     33
     34.. _`data models`: http://www.djangoproject.com/documentation/model_api/
     35
     36Durante toda esta referência, iremos fazer referências aos modelos descritos abaixo, que compreenderiam uma aplicação de weblog.
     37
     38.. code-block:: python
     39
     40  class Blog(models.Model):
     41        name = models.CharField(maxlength=100)
     42        tagline = models.TextField()
     43
     44        def __str__(self):
     45            return self.name
     46
     47    class Author(models.Model):
     48        name = models.CharField(maxlength=50)
     49        email = models.URLField()
     50
     51        def __str__(self):
     52            return self.name
     53
     54    class Entry(models.Model):
     55        blog = models.ForeignKey(Blog)
     56        headline = models.CharField(maxlength=255)
     57        body_text = models.TextField()
     58        pub_date = models.DateTimeField()
     59        authors = models.ManyToManyField(Author)
     60
     61        [imperfeita] def __str__(self):
     62            return self.name
     63
     64
     65Criando objetos
     66================
     67
     68Para 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
     69
     70Para criar um objeto, instancie-o usando argumentos da classe modelo, então chame ``save()`` para salva-lo no banco de dados.
     71
     72Você 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.)
     73
     74Assumindo que os modelos estejam em um arquivo ``mysite/blog/models.py``, segue o exemplo::
     75
     76    from mysite.blog.models import Blog
     77    b = Blog(name='Beatles Blog', tagline='All the latest Beatles news.')
     78    b.save()
     79
     80Isto 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()``.
     81
     82O método ``save()`` não retorna valor algum.
     83
     84Para criar um objeto e salvá-lo, tudo em um único passo veja o método  `create`_ .
     85
     86.. _`create`: http://www.djangoproject.com/documentation/db_api/#create-kwargs
     87
     88
     89Auto incrementando chaves primárias
     90-----------------------------------
     91
     92
     93}}}
     94
     95D E A R  F R I E N D S:
     96 I have already translate more on this document, but didn't have more time to do all rST formating.
     97 I hope to finish the tranlating this week, since that happens i'll update this page.
     98
     99
     100
     101
     102
Back to Top