Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

Dúvida Aula 2 - Diferenças entre versões do Django

Ola, sei que foi informado que o curso foi homologado para a versao 1.7 do django porem eu resolvi baixar a mais recente a 1.10 e notei que há algumas diferenças significativas entre uma versão e outra..

notei que no arquivo urls.py a versão 1.7 utiliza da seguinte forma.

# arquivo connectedin/connectedin/urls.py

from django.conf.urls import patterns, include, url
from django.contrib import admin

urlpatterns = patterns('',
    url(r'^admin/', include(admin.site.urls))
)

como eu sou novato tive dificuldade ai fui pesquisar nos docs do django e descobri que no 1.10 eles utilizam dessa forma:


from django.conf.urls import url
from django.contrib import admin
from perfis import views

urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'^$',views.index)
]

até ai tudo bem.. mas, esbarrei com a continuação da aula 2 onde a aplicação perfil possui tambem um arquivo urls.py , dai não sei se é dferença da versão ou eu que criei errado pois, na minha estrutura da aplicação nao veio esse arquivo urls. Então resolvi cria-lo para tentar continuar porem não consegui chama-lo a partir do arquivo urls.py do projeto.

então eu pergunto:

1 - É possivel eu continuar este curso com a versão atual do django ou preciso voltar para a aconselhada?

2 - Caso seja possivel continuar na versão 1.10 é possivel sanar minha duvida informando como faço pra chamar meu arquivo urls.py da aplicação perfil dentro do urls.py do projeto?

3 - Se for aconselhado eu retornar para a versão 1.7 do django isso não vai prejudicar um pouco o aprendizado ja que possui diferenças significativas entre um e outro?

4 - Há alguma intenção de atualizar o curso para a nova versão? se sim ja tem alguma data?

Bom acho que perguntei e falei muito rsrsr obrigado desde já e desculpe tantos questionamentos. Estou achando de cara o django um pouco complicado mas acho q com o tempo me acostumo estou muito afim de aprender mais essa linguagem que parece tão promissora.

3 respostas

Atualizando minhas perguntas:

Bom continuei os estudos e fui fuçar a documentação do django :) (não há melhor lugar para tirar duvidas) e consegui resolver meu problema de rotas da seguinte forma.

segui o tutorial da documentação que se encontra nesse link: https://docs.djangoproject.com/en/1.10/intro/tutorial01/

criei manualmente meu urls.py do perfiis e nele deixei o codigo desse jeito:

from django.conf.urls import url
from . import views

urlpatterns = [
    url(r'^$', views.index,name='index')
]

ainda não entendi aquele name lá mas creio que seja para chamar a rota por um nome mais pra frente entao creio que será explicado no decorrer das aulas.

e o meu urls.py do projeto ficou assim para chamar o perfiis:


from django.conf.urls import include,url
from django.contrib import admin

urlpatterns = [
    url(r'^',include('perfis.urls')),
    url(r'^admin/', admin.site.urls)
]

pelo que percebi da pra usar o include ao inves de importar o app para o projeto diretamente.

bom com isso respondi minha Pergunta numero 2 ok ;)

solução!

É extremamente recomendado que você use a versão 1.7. Além das versões superiores serem bugadas, algumas coisas mudaram e sua aplicação terá problemas.

Mesmo que eu tivesse lançado hoje o treinamento ele cairia no mesmo problema quando novas versões forem lançadas.

Sugiro que volte para o Django 1.7. Termine o treinamento, fixe o que aprendeu e só depois tente migrar para a nova versão. Se fizer isso, vc terá certeza que seu projeto funciona perfeito e que qualquer erro será de incompatibilidade. Se migrar agora, fica muito complicado outras pessoas te ajudarem.

Aliás, no mundo do desenvolvimento, ninguém sai atualizando as versões dos frameworks assim. Cada atualização pode quebrar sistemas já existentes e novas versões podem ter bugs.

Então, só para frisar, termine o treinamento com o 1.7 e depois migre se assim desejar para versão mais nova.

Ok Seguirei o conselho