Até Quentin Tarantino lançou sua obra-prima filme épico, Django foi sinônimo de "o melhor quadro Python de todos os tempos." Enquanto o seu SEO e pesquisa reputação poderia ter tido um sucesso, Django é ainda a mesma solução de prateleira superior para o desenvolvimento de aplicações Web em Python.
Com uma base de usuários dedicados e uma infinidade de tutoriais on-line, começando com o Django não só é recomendada, mas extremamente fácil de fazer também.
Este gigante do mundo do desenvolvimento Python é extremamente bem respeitado e tem sido a inspiração de muitas estruturas semelhantes, alguns deles até mesmo fora do espectro do Python.
Depois de anos e anos de desenvolvimento, Django é agora uma ferramenta extremamente estável, com muito poucos erros e uma grande quantidade de documentação para ajudar a qualquer iniciante fora. Ele também é constantemente atualizado e atualizado para as últimas versões do Python também.
Agora Django tem sido usado em sites grandes como o Instagram, Mozilla, Disqus, OpenStack, Rdio e Pinterest, só para citar alguns. O que isso diz a você como um desenvolvedor é que você pode facilmente confiar nele para executar projectos dos seus clientes, se ele pode lidar com o tráfego e userbases os locais acima mencionados manusear.
O que é novo nesta versão:.
- O suporte para a execução de ações depois de uma transação de submissão
- O suporte para validação de senha.
- mixins permissão para a vista de classe.
- Novo estilo para contrib.admin.
- O suporte para a execução de testes em paralelo.
O que é novo na versão 1.9:.
- O suporte para a execução de ações depois de uma transação de submissão
- O suporte para validação de senha.
- mixins permissão para a vista de classe.
- Novo estilo para contrib.admin.
- O suporte para a execução de testes em paralelo.
O que é novo na versão 1.8.3:.
- Fixed rubor sessão no backend cached_db
O que é novo na versão 1.8.1:.
- A API formalizado para Model._meta
- O suporte nativo para vários motores de modelo.
- Suporte para expressões SQL complexas através do ORM.
- funcionalidade específica New PostgreSQL em contrib.postgres.
O que é novo na versão 1.7.5 / 1.8b1:
- Correções de bugs:
- Corrigido uma falha de migração quando Anular a Aplicação contrib.contenttypes da primeira migração ou de contrib.auth.
- Made mesas RenameModel operação de renomeação ManyToManyField da migração.
- Corrigido uma falha de migração no MySQL ao migrar de um OneToOneField a um ForeignKey.
- impediu a vista static.serve de produzir ResourceWarnings em determinadas circunstâncias.
- verificação do esquema fixo para ManyToManyField de olhar para o tipo interno, em vez de instância de classe verificando, assim você pode escrever campos personalizados m2m-like com o mesmo comportamento.
O que é novo na versão 1.7.2:
- Correções de bugs:
- Adicionado GeoDjango compatibilidade com o driver de banco de dados mysqlclient.
- Corrigida a falha MySQL 5.6+ com GeometryFields em migrações.
- Corrigido uma falha de migração ao remover um campo que é referenciado em AlterIndexTogether ou AlterUniqueTogether.
- Atualizado o primeiro dia da semana na localidade ucraniana a segunda-feira.
- Adicionado suporte para transacional inicialização metadados espacial sobre SpatiaLite 4.1 +.
- Corrigido uma falha de migração que impedia mudar um campo anulável com um padrão de não-nulo com o mesmo padrão.
- Corrigido uma falha de migração ao adicionar GeometryFields com espaço em branco = True no PostGIS.
- uso permitido de DateTimeField () como Transform.output_field.
- Corrigido um erro de migração serialização envolvendo float (& quot; nan & quot;) e float (& quot; inf & quot;).
- Fixed uma regressão onde os campos de formulário personalizado com um atributo queryset mas nenhum limit_choices_to não poderia ser usado em um ModelForm.
- Corrigido um tipo de erro de validação de campo personalizado com o MySQL backend quando db_type voltou Nenhum.
- Corrigido uma falha de migração quando um campo é renomeado que é parte de um index_together.
- squashmigrations fixos de respeitar o parâmetro --no-optimize.
- Made RenameModel reversível.
- Evitado reversões desnecessários de migrações de outros aplicativos ao migrar para trás.
- Corrigido um erro de consulta raro quando se usa subconsultas profundamente aninhadas.
- Corrigido uma falha em migrações ao excluir um campo que é parte de um índice / restrição unique_together.
- Fixed django.core.files.File .__ __ repr () quando o nome do arquivo contém caracteres Unicode.
- Adicionado contexto faltando Para ver delete_selected do administrador que impediu cabeçalho do site personalizado, etc. de aparecer.
- Fixed uma regressão com inlines geradas dinamicamente e referências de campo permitidas na administração.
- Corrigido um bug loop infinito para determinadas dependências de migração cíclicos, e fez a mensagem de erro para as dependências cíclicas muito mais útil.
- Adicionado faltando index_together manipulação para SQLite.
O que é novo na versão 1.7.1:
- admitidos relacionados muitos-para-muitos campos para ser referenciada na administração.
- Adicionado uma mensagem de erro mais útil se você tentar migrar um aplicativo sem primeiro criar a tabela de contenttypes.
- migrações Modificados algoritmo de dependência para evitar possíveis recursão infinita.
- Corrigido um UnicodeDecodeError quando a mensagem de erro nivelado continha caracteres Unicode.
- cláusulas reintegrado falta de seleção do SQL que foram omitidos em alguns backends quando não estiver usando migrações.
- serialização fixo de objetos do tipo em todas as migrações.
- em linha de estimação e referências ocultas aos campos de administração.
- O decorador @deconstructible agora falhar com um ValueError se o objeto decorados não podem ser automaticamente importados.
- Corrigido um erro em uma mensagem de erro inlineformset_factory () que causou um acidente.
- restaurou a capacidade de usar ABSOLUTE_URL_OVERRIDES com o modelo do 'auth.User' (# 11775). Como efeito colateral, a configuração agora adiciona um método get_absolute_url () para qualquer modelo que aparece no ABSOLUTE_URL_OVERRIDES mas não define get_absolute_url ().
- Evitado mascarando algumas exceções ImportError durante o carregamento do aplicativo.
- index_together vazio ou modelo unique_together há resultados mais longos em migrações infinitas.
- Corrigida a falha na contrib.sitemaps se lastmod retornou uma data em vez de uma data e hora.
- migrações autorizados a trabalhar com app_labels que têm o mesmo última parte (por exemplo django.contrib.auth e vendor.auth).
- restaurada a capacidade de deepcopy objetos F.
- Formatos para Welsh (CY) e várias localidades chinesas (zh_CN, zh_Hans, zh_Hant e zh_TW) foram adicionados. Formatos para macedônio foram corrigidos.
- Adicionado citação de nomes de restrição no SQL gerado pelas migrações para evitar acidente com caracteres maiúsculos no nome.
- renomeação fixo de modelos com um campo de muitos-para-muitos auto-referencial (ManyToManyField ( 'self')).
- Adicionado o get_extra (), get_max_num () e get_min_num () ganchos para GenericInlineModelAdmin.
- Made migrations.RunSQL já não necessitam de sinal de porcentagem escapar. Esta é agora consistente com cursor.execute ().
- Feita a entrada SERIALIZE no dicionário TEST utilizável.
- Corrigido o erro em migrações que impediram que as restrições de chaves estrangeiras para modelos não gerenciados com uma chave personalizada principal.
- Adicionado SchemaEditor para MySQL GIS backend para que índices espaciais será criado para aplicativos com migrações.
- Adicionado SchemaEditor para Oracle GIS backend para que metadados espacial e índices serão criados para aplicativos com as migrações.
- Coerced a opção related_name campo modelo para Unicode durante a geração de migração para gerar migrações que funcionam tanto com Python 2 e 3.
- MigrationWriter fixo para lidar com tipos builtin sem importações.
- Fixed deepcopy em ErrorList.
- Made as admindocs ver para procurar ver detalhes verificar se o modo de exibição especificado na URL existe no URLconf. Antes, era possível importar pacotes arbitrários do caminho Python. Este não foi considerado um problema de segurança porque admindocs só é acessível ao pessoal usuários.
- Fixed UnicodeDecodeError acidente em AdminEmailHandler com caracteres não-ASCII no pedido.
- get_or_create falta Fixa e update_or_create sobre os gestores relacionados causando IntegrityError.
- urlsafe_base64_decode Feito () retornam o tipo adequado (string byte) em Python 3.
- makemigrations agora pode serializar valores de fuso horário-aware.
- Adicionado um aviso para o questionador migrações ao remover a restrição nula de um campo para evitar uma IntegrityError em linhas NULL existente.
- fixos relações genéricas em ModelAdmin.list_filter.
- Restaurado conformidade RFC para o back-end SMTP no Python 3.
- Corrigido uma falha ao analisar os cookies que contêm conteúdo inválido.
- O quadro de verificação do sistema levanta agora models.E020 erro quando o método de classe Model.check () está inacessível.
opções
O que é novo na versão 1.7:
- Um novo sistema integrado de migração de banco de dados. Notas sobre a actualizar a partir do Sul (um popular aplicativo de terceiros fornecendo funcionalidade migração) também estão disponíveis.
- Um conceito reformulado de aplicações Django. aplicações Django não estão ligados à existência de um modelos de arquivos, e agora pode especificar ambos os dados de configuração e código a ser executado como Django é iniciado.
- Melhorias para o API modelo de campo para suportar migrações e, no futuro, para permitir a fácil adição de suporte composite-chave para o ORM do Django.
- Melhorias para o Gerenciador de costume e aulas QuerySet, permitindo inversa relação travessia para especificar o Gestor de usar, ea criação de um gerente de uma classe QuerySet personalizado.
- Um quadro de verificação do sistema extensível que pode ajudar os desenvolvedores na detecção e diagnóstico de erros.
O que é novo na versão 1.6.3 / 1.7b2:
- Fixo:
- MySQL typecasting
- a execução de código inesperado usando reverse ()
- Cache de páginas anônimos poderia revelar token CSRF
O que é novo na versão 1.6.2:
- correio fixo de codificação em Python 3.3.3 e superiores.
- Corrigido um problema onde quando settings.DATABASES [ 'default'] [ 'AUTOCOMMIT'] = false, a conexão não estava no modo autocommit mas Django fingiu que era.
- Fixed uma regressão na herança multi-tabelas excluir consultas ().
- Adicionado itens em falta para django.utils.timezone .__ todos __.
- Corrigido um problema de desalinhamento campo com select_related () e herança modelo.
- Fixed juntar promoção para e condições negada.
- A Oracle introspecção banco de dados agora trabalha com boolean e flutuar campos.
- Corrigido um problema onde os objetos preguiçosos não foram realmente marcado como seguro quando passou por mark_safe () e pode acabar sendo de escape duplo.
- Corrigido uma falha ao executar o comando changepassword quando a representação do objeto do usuário continha caracteres não-ASCII.
- O comando collectstatic irá gerar um erro em vez de padrão para usar o diretório de trabalho atual se STATIC_ROOT não está definido. Combinada com a opção --clear, o comportamento anterior poderia destruir qualquer coisa abaixo do diretório de trabalho atual.
O que é novo na versão 1.6.1:
- Bugs corrigidos:
- visor fixo de instâncias embutidos em formsets quando pai tem 0 para a chave principal.
- Fixed uma regressão onde querysets personalizados para chaves estrangeiras foram substituídos se ModelAdmin teve encomendar set.
- menção removido de um recurso na opção --locale / -l dos makemessages e compilemessages comandos que nunca trabalharam como prometido: Suporte de múltiplos nomes de localidade separados por vírgulas. Ainda é possível especificar vários locais em uma corrida usando a opção várias vezes.
- Fixed uma regressão que desnecessariamente desencadeada configuração das definições ao importar get_wsgi_application.
- teste fixo de logout do cliente () método quando usando o backend de sessão baseada em cookie.
- Corrigido uma falha quando um GeometryField usa um widget não-geométrica.
- senha fixa de hash atualizar quando mudar a contagem de iteração.
- Corrigido um erro na visualização de depuração quando o URLconf contém apenas um elemento.
- resultado de pesquisa faltando-Re acrescentou contar e redefinir link na vista de administração de mudanças.
- A linguagem corrente deixou de ser guardado para a sessão LocaleMiddleware em cada resposta, mas só depois de um logout.
- Corrigido uma falha ao executar runserver em sistemas não-Inglês e quando a data formatada em sua saída continha caracteres não-ASCII.
- Corrigido uma falha na visualização de depuração após uma exceção ocorreu em Python ≥ 3.3.
- Corrigido uma falha no ImageField em algumas plataformas (Homebrew e RHEL6 relatado).
- Fixed uma regressão ao utilizar relações genéricas em ModelAdmin.list_filter.
O que é novo na versão 1.6:
- Django 1.6 simplifica os modelos de projeto padrão e de aplicação, ligar proteção clickjacking e da interface de administração por padrão.
- Django 1.6 revisões do Django, e agora permite autocommit de nível de banco de dados por padrão. Isso envolve algumas depreciações, então por favor não se esqueça de ler as notas sobre como migrar de manipulação de transações de 1,5 estilo.
- Django 1.6 suporta conexões de banco de dados persistentes. Note que isto não é o mesmo que o pool de conexão; isso simplesmente permite conexões para viver (por um tempo configurável) entre solicitações tratadas pelo mesmo trabalhador.
manipulação de transações
O que é novo na versão 1.5.4 / 1.6 Beta 4:
- Fixo:
- Denial of Service através de grandes senhas.
O que é novo na versão 1.5.3 / 1.6 Beta 3:
- Estes lançamentos abordar uma DIRETÓRIO vulnerabilidade de travessia de uma das marcas de modelo built-in do Django.
O que é novo na versão 1.5.2:
- Fixo:
- Cross-site scripting (XSS) no interface de administração
- XSS possível através is_safe_url
O que é novo na versão 1.5.1:
- avisos de nível de módulo emitidos durante os testes não são mais silenciosamente escondido.
- Impedido filtragem em hashes de senha no usuário admin.
O que é novo na versão 1.5.0:
- Django 1.5 introduz suporte para um modelo configurável pelo usuário.
- Django 1.5 é a primeira versão Django com suporte para Python 3 (especificamente, o Python 3.2 e mais recentes).
- documentação do Django também tem tido algum trabalho bastante significativo.
O que é novo na versão 1.4.4 / 1.5 RC 2:
- Estas versões de segurança corrigir quatro questões :. um vetor potencial de phishing, um vector de negação de serviço, um problema de vazamento de informações, e uma série de vulnerabilidades XML
O que é novo na versão 1.4.2:.
- envenenamento cabeçalho do host fixo
- Documentação de HttpOnly opção cookie.
O que é novo na versão 1.4.1:
- bugs de segurança fixa:
- Para cross-site scripting em vistas de autenticação.
- Denial-of-service na validação de imagem.
- Denial-of-service via get_image_dimensions ().
O que é novo na versão 1.4:
- Django 1.4 é a última versão oficial do Django que irá apoiar Python 2.5.
O que é novo na versão 1.4 RC 2:
- Django 1.4 gotas suporte para Python 2.4
- Suporte para estruturas de teste no navegador
- SELECT FOR suporte para a atualização
- Model.objects.bulk_create na ORM
- QuerySet.prefetch_related
- Melhoria hashing de senha
- HTML5 doctype
- filtros de lista na interface de administração
- tipo múltipla na interface de administração
- métodos New ModelAdmin
- inlines administrador respeito
- Ferramentas para a assinatura criptográfica
- baseada em cookie de sessão backend
- New Form Wizard
- reverse_lazy
- Traduzindo URL
- Contextual apoio à tradução para {% trans%} e {% blocktrans%}
- kwargs customizáveis SingleObjectMixin URLconf
- tags de modelos de atribuição
- * args e ** apoio kwargs para funções tag helper
- No embrulho de excepções no modo TEMPLATE_DEBUG
- truncatechars filtro de template
- tag de modelo estático
- backend de armazenamento CachedStaticFilesStorage
- Protecção clickjacking Simples
- melhorias CSRF
- filtragem relatório de erro
- O suporte a IPv6 Extensão
- layout do projeto padrão atualizado e manage.py
- suporte WSGI melhorado
- projeto personalizado e aplicativos de modelos
- O suporte para fusos horários
- comparações HTML nos testes
- Duas cordas novo formato de data li>
permissões de usuário
padrões
O que é novo na versão 1.3.1:.
- manipulação Session
- ataque de negação de serviço através URLField.
- redirecionamento URLField.
- Advisory:. Cabeçalho de host e CSRF
- Advisory:. Depurar páginas e dados POST sensível
O que é novo na versão 1.3:.
- Um quadro para a vista com base na classe de escrita li >
- Built-in suporte para usar recursos de log do Python.
- Suporte Contrib para facilitar o manuseio de arquivos estáticos.
- framework de testes do Django agora suporta (e vem com uma cópia) da biblioteca unittest2.
O que é novo na versão 1.2.5:
- Correções de segurança:
- Uma falha no processamento CSRF.
- Potencial XSS na prestação campo de arquivo.
- vulnerabilidade Directory travessia no Windows.
O que é novo na versão 1.3 beta 1:.
- As alterações nos métodos de login do admin
- Django 1.3 vem com uma nova django.contrib.staticfiles contrib aplicativos para ajudar os desenvolvedores a lidar com os arquivos de mídia estáticos (imagens, CSS, JavaScript, etc.) que são necessários para processar uma página web completa.
- Mais ajustes para o app staticfiles.
O que é novo na versão 1.2.3 / 1.3 alpha 1:.
- vistas à base de Classe
- Log.
- arquivos estáticos Tratamento estendido.
- gestores contexto de transação.
Requisitos :
- Python 2.7 ou superior
Comentários não encontrado