Changes between Version 1 and Version 2 of DocPtModelAPI


Ignore:
Timestamp:
10/31/2006 06:27:23 AM (9 years ago)
Author:
anonymous
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • DocPtModelAPI

    v1 v2  
    4141.. _0.91: http://www.djangoproject.com/documentation/0_91/
    4242
     43===================
     44Referência do Model
     45===================
     46
     47O model é a fonte única e definitiva dos seus dados, nele estão contidos os
     48campos essenciais e relacionamentos dos dados que você está arquivando.
     49Genericamente, cada model referencia a uma tabela no banco de dados.
     50
     51O básico:
     52
     53    * Cada model é uma classe Python que é uma subclasse de
     54      ``django.db.models.Model``.
     55    * Cada atributo do model representa um campo na base de dados.
     56    * Metadados do model (informações descritivas dos dados) vão para uma
     57      classe interior nomeada ``Meta``.
     58    * Metadados usados para o site de administração do Django vão para a
     59      classe interior nomeada ``Admin``.
     60    * A partir disso o Django oferece uma API de acesso ao banco de dados
     61      gerada automaticamente, que é melhor explicada na
     62      `Referência da API de Banco de Dados`_.
     63
     64Associado a esse documento existe o `repositório oficial de exemplos de
     65models`_.(No código fonte do Django, estes exemplos se encontram no
     66diretório ``tests/modeltests``.)
     67
     68.. _Referência da API de Banco de Dados:
     69    http://www.djangoproject.com/documentation/db_api/
     70.. _repositório oficial de exemplos de model:
     71    http://www.djangoproject.com/documentation/models/
     72
     73Exemplo rápido
     74==============
     75
     76Este model exemplo define uma ``Person``, que possui um ``first_name`` e
     77``last_name``::
     78
     79    from django.db import models
     80
     81    class Person(models.Model):
     82        first_name = models.CharField(maxlength=30)
     83        last_name = models.CharField(maxlength=30)
     84
     85``first_name`` e ``last_name`` são *campos* do model. Cada campo é
     86especificado como um atributo da classe, e cada atributo referencia a uma
     87coluna do banco de dados.
     88
     89O model ``Person`` acima criaria uma tabela no banco de dados como essa::
     90
     91    CREATE TABLE myapp_person (
     92        "id" serial NOT NULL PRIMARY KEY,
     93        "first_name" varchar(30) NOT NULL,
     94        "last_name" varchar(30) NOT NULL
     95    );
     96
     97Algumas notas técnicas:
     98
     99    * O nome da tabela, ``myapp_person``, é automaticamente atribuído de
     100      algum metadado do model podendo ser sobrescrito. Olhe _`Nome de
     101      Tabelas` abaixo.
     102    * Um campo ``id`` é adicionado automaticamente
     103
     104
    43105}}}
    44106
Back to Top