desvantagens e vantagens de django

738 views
Skip to first unread message

Marcelo Valle (BLOOMBERG/ LONDON)

unread,
Dec 10, 2015, 11:43:01 AM12/10/15
to python...@googlegroups.com
Pessoal,

Usei bastante django em um projeto no passado, o que me faz querer usa-lo muitas vezes em projetos novos. Listo alguns motivos a seguir:

  • Existem varios plugins para django, como plugins para servir rest, criacao de usuarios, open auth, etc.
  • Eu conheco
  • Parece ser um framework maduro e largamente usado, o que aumenta seu uso para projetos grandes
  • A performance do python eh irrelevante para conteudo estatico - todo o conteudo da pasta "static" eh servido em producao diretamente pelo nginx + WSGI, nenhuma linha de python eh executada


Contudo, eu vejo algumas desvantagens.

  • Se eu tenho um projeto estatico em HTML puro feito por mim ou por um designer, para portar para django eu preciso reescrever MUITOS links e referencias de arquivos, referenciando "/static/ARQUIVO" ao inves de soh "ARQUIVO". Por vezes eh ainda pior, voceh precisa sair cacando referencias em arquivos e substituir por algo como %URL_STATIC%/ARQUIVO - ouco dizer que alguns frameworks, como nodeJs, nao tem esse problema
  • eh necessario muito codigo boiler plater - para ter um projeto minimo voceh precisa gerar codigo e ter uma serie de arquivos que sao exatamente os mesmos em todo projeto
  • Se voceh atualiza a versao do django em seu projeto, costumeiramente terah de adaptar configuracoes. Um projeto que roda em versao anterior a 1.9 provavelmente teria que ter algumas adaptacoes para rodar na versao 1.9, por exemplo.


Minha pergunta - existem boas alternativas para django em Python?
Existe alguma que tenha as mesmas vantagens acima, mas sem as desvantagens?

-Marcelo.


<< ideas don't deserve respect >>

John Evan Dizaro

unread,
Dec 10, 2015, 12:15:26 PM12/10/15
to Python Brasil
Gostei da sua sinceridade.
Valeu

--
--
------------------------------------
Grupo Python-Brasil
http://www.python.org.br/wiki/AntesDePerguntar
 
<*> Para visitar o site do grupo na web, acesse:
http://groups.google.com/group/python-brasil
 
<*> Para sair deste grupo, envie um e-mail para:
python-brasi...@googlegroups.com

---
Você recebeu essa mensagem porque está inscrito no grupo "Python Brasil" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para python-brasi...@googlegroups.com.
Para mais opções, acesse https://groups.google.com/d/optout.



--
John Evan Dizaro - Desenvolvimento de Sistema Computacionais
Linux, MSWindows
Celular (41) 9243-3240

 °v° NÃO USE DROGAS,
/(_)\ USE GNU/LINUX
 ^ ^

Vinicius Assef

unread,
Dec 10, 2015, 12:24:24 PM12/10/15
to python...@googlegroups.com
Marcelo, a necessidade constante de ajustes nos upgrades também me incomoda no Django.

Eu iria de Flask (pela popularidade) ou Pyramid (pela estabilidade).

O Pyramid parece não ter tantos problemas nas atualizações.

--

Márcio Sancho

unread,
Dec 10, 2015, 12:42:01 PM12/10/15
to python...@googlegroups.com

Só por curiosidade, Web2py é só pra aprendizado ou não entra nas preferências por ainda estar no python 2.x?

Vinicius Assef

unread,
Dec 10, 2015, 12:50:11 PM12/10/15
to python...@googlegroups.com
Atualmente eu só iria de Web2py para coisas muito pequenas (mas muito pequenas mesmo!) e simples.

O posicionamento oficial dos core developers de não suportarem python 3 é muito ruim, na minha humilde opinião.

--
Vinicius Assef.

Shander Lyrio

unread,
Dec 10, 2015, 12:57:31 PM12/10/15
to python...@googlegroups.com
Em 10 de dezembro de 2015 14:42, Marcelo Valle (BLOOMBERG/ LONDON) <mvalle...@bloomberg.net> escreveu:

  • Existem varios plugins para django, como plugins para servir rest, criacao de usuarios, open auth, etc.
​Pyramid também tem, mas certamente não será do tamanho do ecossistema do Django.
 
  • Eu conheco
Talvez seja difícil encontrar um outro com esta mesma característica, conhece Pyramid? ou Pylons?
  • Parece ser um framework maduro e largamente usado, o que aumenta seu uso para projetos grandes
​Existe ​sempre uma polêmica sobre o que tu considera grande, mas do meu ponto de vista, se for para algo grande eu iria de Pyramid. Facilidade de utilizar quem eu quero para fazer algo para mim conta muito, inclusive, se for o caso usar mais de um. Em Pyramid você poderia por exemplo, usar 2 ou 3 templates engine diferentes que ele popularia e saberia como renderizar automaticamente pela extensão do template. Não que isto seja legal, mas é só para ter uma ideia do que eu considero features para um projeto grande, facilidade de configurar e usar quem eu quiser é uma destas features desejadas.
 
  • A performance do python eh irrelevante para conteudo estatico - todo o conteudo da pasta "static" eh servido em producao diretamente pelo nginx + WSGI, nenhuma linha de python eh executada
​Acreditava que isto fosse assim com qualquer framework, me assustei em saber que isto é considerada uma features no Django.


Contudo, eu vejo algumas desvantagens.

  • Se eu tenho um projeto estatico em HTML puro feito por mim ou por um designer, para portar para django eu preciso reescrever MUITOS links e referencias de arquivos, referenciando "/static/ARQUIVO" ao inves de soh "ARQUIVO". Por vezes eh ainda pior, voceh precisa sair cacando referencias em arquivos e substituir por algo como %URL_STATIC%/ARQUIVO - ouco dizer que alguns frameworks, como nodeJs, nao tem esse problema
Em Pyramid você pode escolher onde estão seus arquivos estáticos, inclusive podendo escolher mais de um lugar para eles e definir a ordem de procura. É claro que para usar isto, você pode perder o item 4 que você colocou como vantagem logo acima. Aí depende do projeto, mas a localização do static pode ser em qualquer lugar ou vários lugares.

  • eh necessario muito codigo boiler plater - para ter um projeto minimo voceh precisa gerar codigo e ter uma serie de arquivos que sao exatamente os mesmos em todo projeto
Eu não vejo isto em Pyramid, a quantidade de arquivos de um projeto mínimo é mínima.
 
  • Se voceh atualiza a versao do django em seu projeto, costumeiramente terah de adaptar configuracoes. Um projeto que roda em versao anterior a 1.9 provavelmente teria que ter algumas adaptacoes para rodar na versao 1.9, por exemplo.

​Até hoje ​

 


Minha pergunta - existem boas alternativas para django em Python?
Existe alguma que tenha as mesmas vantagens acima, mas sem as desvantagens?

-Marcelo.


<< ideas don't deserve respect >>

--

Shander Lyrio

unread,
Dec 10, 2015, 1:01:33 PM12/10/15
to python...@googlegroups.com
  • Se voceh atualiza a versao do django em seu projeto, costumeiramente terah de adaptar configuracoes. Um projeto que roda em versao anterior a 1.9 provavelmente teria que ter algumas adaptacoes para rodar na versao 1.9, por exemplo.
Sem querer teclei Send antes de completar esta resposta....

​Até hoje não encontrei este tipo de problema no Pyramid, talvez porque ele seja um framework mínimo, que funciona mais como uma cola de vários frameworks. Qualquer mudança nestes frameworks, ao que parece é tratado internamente no Pyramid de forma que eu tenho sempre a mesma api. Com exceção de quando migrei meus projetos de Pylons 0.9.7 para Pyramid 1.0, não houve mais nenhuma necessidade de alterar estes códigos, mesmo quando atualizo o Pyramid.

--
​Shander Lyrio​



Fabio C. Barrionuevo da Luz

unread,
Dec 10, 2015, 1:08:02 PM12/10/15
to python...@googlegroups.com
Shander e outros brasileiros que manjam de Pyramid: Poxa, Pyramid merece um tutorial (ou serie) em português, publicado lá no www.pythonclub.com.br (atualmente temos mais de 15mil pageviews únicos mensais)


Pyramid para mim (e acredito também para a uma grande quantidade de gente) está igual musica do Zeca pagodinho: "Nunca vi, nem comi, eu só ouço falar" .



--
--
------------------------------------
Grupo Python-Brasil
http://www.python.org.br/wiki/AntesDePerguntar
 
<*> Para visitar o site do grupo na web, acesse:
http://groups.google.com/group/python-brasil
 
<*> Para sair deste grupo, envie um e-mail para:
python-brasi...@googlegroups.com

---
Você recebeu essa mensagem porque está inscrito no grupo "Python Brasil" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para python-brasi...@googlegroups.com.
Para mais opções, acesse https://groups.google.com/d/optout.



--
Fábio C. Barrionuevo da Luz
Palmas - Tocantins - Brasil - América do Sul


Blog colaborativo sobre Python e tecnologias Relacionadas, mantido totalmente no https://github.com/pythonclub/pythonclub.github.io .

Todos são livres para publicar. É só fazer fork, escrever sua postagem e mandar o pull-request. Leia mais sobre como publicar em README.md e contributing.md.
Regra básica de postagem:
"Você" acha interessante? É útil para "você"? Pode ser utilizado com Python ou é útil para quem usa Python? Está esperando o que? Publica logo, que estou louco para ler...

Fellipe Henrique

unread,
Dec 10, 2015, 1:15:20 PM12/10/15
to Python Brasil

2015-12-10 16:07 GMT-02:00 Fabio C. Barrionuevo da Luz <bna...@gmail.com>:
Pyramid para mim (e acredito também para a uma grande quantidade de gente) está igual musica do Zeca pagodinho: "Nunca vi, nem comi, eu só ouço falar" .

Sempre ouvi falar muito bem dele, mas achei que com ele, tens que escrever muito mais que o django.. sei que o django "esconde" muita coisa, e por isso é mais fácil usá-lo.. mas realmente seria interessante ter um tutorial, principalmente na parte REST.. que falam que o Pyramid dá um show no Django...



T.·.F.·.A.·.     S+F
Fellipe Henrique P. Soares

e-mail: > echo "lkrrovknFmsgor4ius" | perl -pe \ 's/(.)/chr(ord($1)-2*3)/ge'
Twitter: @fh_bash

Daniel Silva

unread,
Dec 10, 2015, 1:18:45 PM12/10/15
to python...@googlegroups.com
Existe algum livro (pelo menos em inglês) sobre pyramid?

--

Sinval Júnior

unread,
Dec 10, 2015, 1:27:19 PM12/10/15
to python...@googlegroups.com
Utilização com Angularjs. São tantas modificações e dificuldades que acabo optando por Flask.

Ao encaminhar esta mensagem, por favor:
1 - Apague meu endereço eletrônico;
2 - Encaminhe como Cópia Oculta (Cco ou BCc) aos seus destinatários. Dificulte assim a disseminação de vírus, spams e banners.

#=================================================================+
#!/usr/bin/env python
nome = 'Sinval Júnior'
email = 'sinvalju arroba gmail ponto com'
print nome
print email
#==================================================================+

Em 10 de dezembro de 2015 14:42, Marcelo Valle (BLOOMBERG/ LONDON) <mvalle...@bloomberg.net> escreveu:
--

willian firmino

unread,
Dec 10, 2015, 1:29:13 PM12/10/15
to python-brasil
Tem este tutorial que conheço: http://pyramid-blogr.readthedocs.org/en/latest

Shander Lyrio

unread,
Dec 10, 2015, 1:35:16 PM12/10/15
to python...@googlegroups.com

Na própria documentação, você pode baixá-la completa em pdf ou ePub, tem o mesmo formato de um livro. A documentação é muito boa e muito completa, dificilmente não vá encontrar algo lá.

http://docs.pylonsproject.org/en/latest/docs/pyramid.html#pyramid-documentation


--
Shander Lyrio

John Evan Dizaro

unread,
Dec 10, 2015, 1:36:32 PM12/10/15
to Python Brasil
Só para incrementar esta discussão aqui vai uma link interessante
https://www.airpair.com/python/posts/django-flask-pyramid

Shander Lyrio

unread,
Dec 10, 2015, 1:37:05 PM12/10/15
to python...@googlegroups.com
​Em 10 de dezembro de 2015 16:07, Fabio C. Barrionuevo da Luz <bna...@gmail.com> escreveu:

Pyramid para mim (e acredito também para a uma grande quantidade de gente) está igual musica do Zeca pagodinho: "Nunca vi, nem comi, eu só ouço falar" .


​Eu realmente gostaria de ter tempo para isto, juro que gostaria, já até pensei em começar, mas o tempo está foda!

Sobram projetos e falta tempo.

--
Shander Lyrio
 

Renato Cantarino

unread,
Dec 10, 2015, 1:41:09 PM12/10/15
to python...@googlegroups.com
Vi alguns especialista Python indicando fortemente o Flask, quase que o cara fala explicitamente: "Largue o django, não presta!!"

--
--
------------------------------------
Grupo Python-Brasil
http://www.python.org.br/wiki/AntesDePerguntar
 
<*> Para visitar o site do grupo na web, acesse:
http://groups.google.com/group/python-brasil
 
<*> Para sair deste grupo, envie um e-mail para:
python-brasi...@googlegroups.com

---
Você recebeu essa mensagem porque está inscrito no grupo "Python Brasil" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para python-brasi...@googlegroups.com.
Para mais opções, acesse https://groups.google.com/d/optout.



--

Att,
Renato Cantarino

Shander Lyrio

unread,
Dec 10, 2015, 1:59:05 PM12/10/15
to python...@googlegroups.com
Em 10 de dezembro de 2015 16:40, Renato Cantarino <renato.c...@gmail.com> escreveu:
Vi alguns especialista Python indicando fortemente o Flask, quase que o cara fala explicitamente: "Largue o django, não presta!!"


​Eu acho que o Django é excelente para o que ele se propõe.​ É muito difícil alguém indicar algo completamente isento de interesse. Se mais mais pessoas usam Flash, vai ter mais vaga para Flask e portanto melhora o mercado de trabalho para quem conhece bem Flask. Então este tipo de coisa eu costumo sempre ignorar.

O que vale é testar os frameworks, ver qual se adapta melhor ao seu projeto e utilizar ele. Se o único quesito que você tem ao escolher um framework web python for popularidade, Django dá de lavada em todo mundo então esqueça todo o resto.

Pyramid é bom para mim, pode ser que seja bom para outro também, mas não há garantias, depende do projeto, depende do desenvolvedor. Poucas pessoas entendem o porquê eu tenho um Astra, e porque eu corri na concessionária para comprar um dos últimos quando ia sair de linha. Ele desvalorizou um monte, é verdade, mas para os meus requisitos, ele é o que mais atende com ótimo custo benefício.

--
​Shander Lyrio​

Marcelo Valle (BLOOMBERG/ LONDON)

unread,
Dec 10, 2015, 2:02:21 PM12/10/15
to python...@googlegroups.com
> ​Acreditava que isto fosse assim com qualquer framework, me assustei em saber que isto é considerada uma features no Django.

Entao pyramid suporta isso sem eu precisar usar uma pasta static?

> É claro que para usar isto, você pode perder o item 4 que você colocou como vantagem logo acima.

Eu nao posso perder o item 4. Flask ou Pyramid suportam isso sem eu precisar personalizar meus arquivos?

[]s

Subject: Re: [python-brasil] desvantagens e vantagens de django
Em 10 de dezembro de 2015 14:42, Marcelo Valle (BLOOMBERG/ LONDON) <mvalle...@bloomberg.net> escreveu:

  • Existem varios plugins para django, como plugins para servir rest, criacao de usuarios, open auth, etc.
​Pyramid também tem, mas certamente não será do tamanho do ecossistema do Django.
 
  • Eu conheco
Talvez seja difícil encontrar um outro com esta mesma característica, conhece Pyramid? ou Pylons?
  • Parece ser um framework maduro e largamente usado, o que aumenta seu uso para projetos grandes
​Existe ​sempre uma polêmica sobre o que tu considera grande, mas do meu ponto de vista, se for para algo grande eu iria de Pyramid. Facilidade de utilizar quem eu quero para fazer algo para mim conta muito, inclusive, se for o caso usar mais de um. Em Pyramid você poderia por exemplo, usar 2 ou 3 templates engine diferentes que ele popularia e saberia como renderizar automaticamente pela extensão do template. Não que isto seja legal, mas é só para ter uma ideia do que eu considero features para um projeto grande, facilidade de configurar e usar quem eu quiser é uma destas features desejadas.
 
  • A performance do python eh irrelevante para conteudo estatico - todo o conteudo da pasta "static" eh servido em producao diretamente pelo nginx + WSGI, nenhuma linha de python eh executada
​Acreditava que isto fosse assim com qualquer framework, me assustei em saber que isto é considerada uma features no Django.


Contudo, eu vejo algumas desvantagens.

  • Se eu tenho um projeto estatico em HTML puro feito por mim ou por um designer, para portar para django eu preciso reescrever MUITOS links e referencias de arquivos, referenciando "/static/ARQUIVO" ao inves de soh "ARQUIVO". Por vezes eh ainda pior, voceh precisa sair cacando referencias em arquivos e substituir por algo como %URL_STATIC%/ARQUIVO - ouco dizer que alguns frameworks, como nodeJs, nao tem esse problema
Em Pyramid você pode escolher onde estão seus arquivos estáticos, inclusive podendo escolher mais de um lugar para eles e definir a ordem de procura. É claro que para usar isto, você pode perder o item 4 que você colocou como vantagem logo acima. Aí depende do projeto, mas a localização do static pode ser em qualquer lugar ou vários lugares.

  • eh necessario muito codigo boiler plater - para ter um projeto minimo voceh precisa gerar codigo e ter uma serie de arquivos que sao exatamente os mesmos em todo projeto
Eu não vejo isto em Pyramid, a quantidade de arquivos de um projeto mínimo é mínima.
 
  • Se voceh atualiza a versao do django em seu projeto, costumeiramente terah de adaptar configuracoes. Um projeto que roda em versao anterior a 1.9 provavelmente teria que ter algumas adaptacoes para rodar na versao 1.9, por exemplo.

​Até hoje ​

 


Minha pergunta - existem boas alternativas para django em Python?
Existe alguma que tenha as mesmas vantagens acima, mas sem as desvantagens?

-Marcelo.


<< ideas don't deserve respect >>

Victor Augusto Furtado Leite

unread,
Dec 10, 2015, 2:14:23 PM12/10/15
to python...@googlegroups.com
Marcelo, sobre o Flask, acho que isso responde em parte sua pergunta.

Agora, o que você quer dizer sobre personalizar seus arquivos?! Acredito que em todos os frameworks você vai precisar configurar a pasta em algum lugar, então tem que mudar alguma coisa...

Mas se você esta se referindo a alterar seus templates, por ter alterado a pasta, não precisa desde que você esteja usando a função url_for para o endpoint static (url_for('static', file='...') )

[]s

Victor

Mário Idival

unread,
Dec 10, 2015, 2:18:03 PM12/10/15
to python...@googlegroups.com
Keep Calm,
O curso de Pyramid ta saindo....

Inscrevam-se no canal:

Mário Idival
Python Developer

Twitter|Github|Skype : marioidival
Facebookmario.idival
User Linux : #554446

Shander Lyrio

unread,
Dec 10, 2015, 2:33:45 PM12/10/15
to python...@googlegroups.com
Em 10 de dezembro de 2015 17:01, Marcelo Valle (BLOOMBERG/ LONDON) <mvalle...@bloomberg.net> escreveu:
> ​Acreditava que isto fosse assim com qualquer framework, me assustei em saber que isto é considerada uma features no Django.

Entao pyramid suporta isso sem eu precisar usar uma pasta static?

​Por padrão o Pyramid tem uma pasta chama estatic em seu bootstrap, é uma boa prática usá-la, mas não precisa ser, ela pode ser em qualquer lugar e podem ser várias pastas static, cada um em um local diferente, onde o arquivo é procurando na primeira, se não encontrar vai na segunda, terceira e assim sucessivamente.​


> É claro que para usar isto, você pode perder o item 4 que você colocou como vantagem logo acima.

Eu nao posso perder o item 4. Flask ou Pyramid suportam isso sem eu precisar personalizar meus arquivos?


​Flask eu não sei dizer porque eu não conheço, mas acho que você não vai conseguir fazer isto no nginx sozinho.​ Para um caso destes eu utilizaria a mágica do Pyramid e deixaria o cache nas mãos de outra pessoa como o Varnish por exemplo. O Pyramid consegue procurar o arquivo em vários lugares e te servir o arquivo certo se isto ficar por conta dele, mas o nginx acho que não tem esta opção, mas aí é acho mesmo.

--
​Shander Lyrio​

Eric Hideki

unread,
Dec 10, 2015, 3:42:59 PM12/10/15
to Python Brasil, mvalle...@bloomberg.net
Minha pergunta - existem boas alternativas para django em Python?

>> Python é uma das linguagens que mais tem opções de frameworks web. Basta olhar a lista e ficará perdido de tantas opções - https://wiki.python.org/moin/WebFrameworks
>> Então basta avaliar quais são seus problemas/requisitos e escolher qual se encaixa melhor as suas necessidades.

Existe alguma que tenha as mesmas vantagens acima, mas sem as desvantagens?

Vamos as desvantagens citadas:
  • Se eu tenho um projeto estatico em HTML puro feito por mim ou por um designer, para portar para django eu preciso reescrever MUITOS links e referencias de arquivos, referenciando "/static/ARQUIVO" ao inves de soh "ARQUIVO". Por vezes eh ainda pior, voceh precisa sair cacando referencias em arquivos e substituir por algo como %URL_STATIC%/ARQUIVO - ouco dizer que alguns frameworks, como nodeJs, nao tem esse problema
  • eh necessario muito codigo boiler plater - para ter um projeto minimo voceh precisa gerar codigo e ter uma serie de arquivos que sao exatamente os mesmos em todo projeto
  • Se voceh atualiza a versao do django em seu projeto, costumeiramente terah de adaptar configuracoes. Um projeto que roda em versao anterior a 1.9 provavelmente teria que ter algumas adaptacoes para rodar na versao 1.9, por exemplo.
1. A primeira desvantagem você terá com qualquer ferramenta, então não é desvantagem do Django.
2. O Django é um full-stack framework, ou seja, ele já deixa preparado o ambiente para o rápido desenvolvimento. Isso é característica de qualquer full-stack framework. Se ter um código pronto o incomoda, então as opções mini-framework (Flask e Bottle) são os mais indicados.
3. Não entendi como desvantagem. Qualquer atualização teremos que fazer adaptações, independente da ferramenta.

Conclusão:

Acho que é mais questão de olhar mais atentamente qual o propósito de cada ferramenta e mandar bala. As desvantagens citadas não são exclusivas do Django.

Sinval Júnior

unread,
Dec 10, 2015, 7:34:09 PM12/10/15
to python...@googlegroups.com

Quais especialistas e quais os principais argumentos?

Fred Chevitarese

unread,
Dec 10, 2015, 8:21:43 PM12/10/15
to python-brasil
Pow Mario, show de bola ein ;)

To me inscrevendo e no aguardo!



"
São os homens que mais me surpreendem na humanidade. Porque perdem a saúde para juntar dinheiro, depois perdem dinheiro para recuperar a saúde. E por pensarem ansiosamente no futuro, esquecem do presente de tal forma que acabam por não viver nem o presente nem o futuro. E vivem como se nunca fossem morrer e morrem como se nunca tivessem vivido” - Dalai Lama.
"

Fred Chevitarese - GNU/Linux


Régis Silva

unread,
Dec 10, 2015, 9:33:22 PM12/10/15
to Python Brasil
Eu também apoio a ideia de um tutorial sobre Pyramid no www.pythonclub.com.br e sobre web2py também.

Régis da Silva

Marcelo Valle (BLOOMBERG/ LONDON)

unread,
Dec 11, 2015, 5:15:18 AM12/11/15
to python...@googlegroups.com
  • Por vezes eh ainda pior, voceh precisa sair cacando referencias em arquivos e substituir por algo como %URL_STATIC%/ARQUIVO
  • A primeira desvantagem você terá com qualquer ferramenta, então não é desvantagem do Django.

    Discordo dessa... nodeJs, por exemplo, nao requer que voceh personalize seu arquivo. Em Ruby on Rail, se nao estou enganado voceh usa um plugin do nginx que chama o rails, entao soh bate no seu projeto quanto o NGINX chama, *acho* que deve ser possivel definir o que bate o rails ou nao de acordo com o tipo de arquivo, ao inves do path.
    Alem disso, mesmo se nao existir no mercado nenhuma ferramenta que faca isso, eh possivel fazer, entao soh faltaria alguem criar. Eu quero justamente descobrir isso, serah que fui o primeiro a ter esse problema?


    • Não entendi como desvantagem. Qualquer atualização teremos que fazer adaptações, independente da ferramenta.

    Nao se eles mantiverem backward compatibility e diminuirem o tanto de boiler plater necessario. O tanto de boiler plate vai contra a regra DRI "Don't Repeat Yourself" https://pt.wikipedia.org/wiki/Don%27t_repeat_yourself e convencao sobre configuracao https://pt.wikipedia.org/wiki/Conven%C3%A7%C3%A3o_sobre_configura%C3%A7%C3%A3o - por que exigir tanta configuracao de cara? Se eh default, poderia ser a convencao. Idealmente, o arquivo de configuracao de um projeto seria VAZIO ateh que voceh sentisse a necessidade de personaliza-lo.

    []s



    --
    --
    ------------------------------------
    Grupo Python-Brasil
    http://www.python.org.br/wiki/AntesDePerguntar
     
    <*> Para visitar o site do grupo na web, acesse:
    http://groups.google.com/group/python-brasil
     
    <*> Para sair deste grupo, envie um e-mail para:
    python-brasi...@googlegroups.com

    ---
    Você recebeu essa mensagem porque está inscrito no grupo "Python Brasil" dos Grupos do Google.
    Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para python-brasi...@googlegroups.com.
    Para mais opções, acesse https://groups.google.com/d/optout.

    Mauricio Lima

    unread,
    Dec 11, 2015, 6:06:33 AM12/11/15
    to python...@googlegroups.com
    Idealmente Marcelo, você vai querer seus arquivos estáticos organizados em um diretório apenas e configurado com uma variável que dê a url completa do estático.
    Com isso você consegue evoluir a configuração do seu site para usar uma cdn por exemplo e poder trocar ela a qualquer momento. Servir arquivo estático com o Django é um desperdício de recursos muito grande, então o Django tem essa prática de forçar a barra no sentido de configurar algo externo para fazer isso, o que torna um pouco chato nos momentos iniciais do projeto.
    Quanto ao módulo de nginx que integra com rails, se você está falando do passenger, lá você configura qual é a url dos estáticos também, não tem nada automático por tipo de arquivo, é pelo path também.

    Abs,

    david sylvestre

    unread,
    Dec 11, 2015, 7:26:04 AM12/11/15
    to Python Brasil, mvalle...@bloomberg.net
    Montar expressão regular não agilizaria a troca dos links não?

    Marcelo Valle (BLOOMBERG/ LONDON)

    unread,
    Dec 11, 2015, 8:25:06 AM12/11/15
    to python...@googlegroups.com
    Just Mauricio, nao havia pensado na CDN. Isso eh outra vantagem de usar isso... Eu estava falando sobre o passanger mesmo, mas pelo visto eu estava errado sobre como ele funciona :D
    Puxa, nao tem jeito, para projetos grandes acho que eh o melhor que pode ser feito mesmo. Esquecam essa desvantagem entao, a unica que vejo eh a do boiler plate.
    []s

    Subject: Re: [python-brasil] Re: desvantagens e vantagens de django
    Idealmente Marcelo, você vai querer seus arquivos estáticos organizados em um diretório apenas e configurado com uma variável que dê a url completa do estático.
    Com isso você consegue evoluir a configuração do seu site para usar uma cdn por exemplo e poder trocar ela a qualquer momento. Servir arquivo estático com o Django é um desperdício de recursos muito grande, então o Django tem essa prática de forçar a barra no sentido de configurar algo externo para fazer isso, o que torna um pouco chato nos momentos iniciais do projeto.
    Quanto ao módulo de nginx que integra com rails, se você está falando do passenger, lá você configura qual é a url dos estáticos também, não tem nada automático por tipo de arquivo, é pelo path também.

    Abs,

    Em sex, 11 de dez de 2015 às 08:15, Marcelo Valle (BLOOMBERG/ LONDON) <mvalle...@bloomberg.net> escreveu:
    • Por vezes eh ainda pior, voceh precisa sair cacando referencias em arquivos e substituir por algo como %URL_STATIC%/ARQUIVO
    • A primeira desvantagem você terá com qualquer ferramenta, então não é desvantagem do Django.

    Discordo dessa... nodeJs, por exemplo, nao requer que voceh personalize seu arquivo. Em Ruby on Rail, se nao estou enganado voceh usa um plugin do nginx que chama o rails, entao soh bate no seu projeto quanto o NGINX chama, *acho* que deve ser possivel definir o que bate o rails ou nao de acordo com o tipo de arquivo, ao inves do path.
    Alem disso, mesmo se nao existir no mercado nenhuma ferramenta que faca isso, eh possivel fazer, entao soh faltaria alguem criar. Eu quero justamente descobrir isso, serah que fui o primeiro a ter esse problema?


    • Não entendi como desvantagem. Qualquer atualização teremos que fazer adaptações, independente da ferramenta.

    Nao se eles mantiverem backward compatibility e diminuirem o tanto de boiler plater necessario. O tanto de boiler plate vai contra a regra DRI "Don't Repeat Yourself" https://pt.wikipedia.org/wiki/Don%27t_repeat_yourself e convencao sobre configuracao https://pt.wikipedia.org/wiki/Conven%C3%A7%C3%A3o_sobre_configura%C3%A7%C3%A3o - por que exigir tanta configuracao de cara? Se eh default, poderia ser a convencao. Idealmente, o arquivo de configuracao de um projeto seria VAZIO ateh que voceh sentisse a necessidade de personaliza-lo.

    []s




    Subject: Re:[python-brasil] Re: desvantagens e vantagens de django
    Minha pergunta - existem boas alternativas para django em Python?

    >> Python é uma das linguagens que mais tem opções de frameworks web. Basta olhar a lista e ficará perdido de tantas opções - https://wiki.python.org/moin/WebFrameworks
    >> Então basta avaliar quais são seus problemas/requisitos e escolher qual se encaixa melhor as suas necessidades.

    Existe alguma que tenha as mesmas vantagens acima, mas sem as desvantagens?

    Vamos as desvantagens citadas:
    • Se eu tenho um projeto estatico em HTML puro feito por mim ou por um designer, para portar para django eu preciso reescrever MUITOS links e referencias de arquivos, referenciando "/static/ARQUIVO" ao inves de soh "ARQUIVO". Por vezes eh ainda pior, voceh precisa sair cacando referencias em arquivos e substituir por algo como %URL_STATIC%/ARQUIVO - ouco dizer que alguns frameworks, como nodeJs, nao tem esse problema
    • eh necessario muito codigo boiler plater - para ter um projeto minimo voceh precisa gerar codigo e ter uma serie de arquivos que sao exatamente os mesmos em todo projeto
    • Se voceh atualiza a versao do django em seu projeto, costumeiramente terah de adaptar configuracoes. Um projeto que roda em versao anterior a 1.9 provavelmente teria que ter algumas adaptacoes para rodar na versao 1.9, por exemplo.
    1. A primeira desvantagem você terá com qualquer ferramenta, então não é desvantagem do Django.
    2. O Django é um full-stack framework, ou seja, ele já deixa preparado o ambiente para o rápido desenvolvimento. Isso é característica de qualquer full-stack framework. Se ter um código pronto o incomoda, então as opções mini-framework (Flask e Bottle) são os mais indicados.
    3. Não entendi como desvantagem. Qualquer atualização teremos que fazer adaptações, independente da ferramenta.

    Conclusão:

    Acho que é mais questão de olhar mais atentamente qual o propósito de cada ferramenta e mandar bala. As desvantagens citadas não são exclusivas do Django.

    --
    --
    ------------------------------------
    Grupo Python-Brasil
    http://www.python.org.br/wiki/AntesDePerguntar
     
    <*> Para visitar o site do grupo na web, acesse:
    http://groups.google.com/group/python-brasil
     
    <*> Para sair deste grupo, envie um e-mail para:
    python-brasi...@googlegroups.com

    ---
    Você recebeu essa mensagem porque está inscrito no grupo "Python Brasil" dos Grupos do Google.
    Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para python-brasi...@googlegroups.com.
    Para mais opções, acesse https://groups.google.com/d/optout.
    << ideas don't deserve respect >>

    Marcelo Valle (BLOOMBERG/ LONDON)

    unread,
    Dec 11, 2015, 8:26:29 AM12/11/15
    to python...@googlegroups.com
    Eu criei alguns scripts pra me ajudar com isso...

    Mas eh muito chat fazer isso em todo projeto novo. Ateh porque muitas libs JS que voceh pega apontam para arquivos na raiz e nao ha como prever uma maneira generica de fazer isso em codigos que voceh nao conhece...

    []s

    Subject: Re:[python-brasil] Re: desvantagens e vantagens de django
    Montar expressão regular não agilizaria a troca dos links não?

    Anderson Marques

    unread,
    Dec 11, 2015, 1:03:08 PM12/11/15
    to Python Brasil

    Eu começei a fazer umas vídeos aulas sobre o pyramid, o áudio não está muito bom pôs não tenho microfone apropriado, mas creio que dar para entender.
    Por enquanto só tem duas aulas mas derei continuidade em breve.

    link da primeira aula -> https://www.youtube.com/watch?v=Av0v_Y1IoUE

    Desculpem qualquer coisa, ainda sou iniciante e desajeitado nesse negócio de vídeo aula.
    As próximas serão melhores.

    Aceito Sugestões de melhoria :D

    Gabriel Mendonça

    unread,
    Nov 18, 2016, 5:46:41 PM11/18/16
    to Python Brasil, mvalle...@bloomberg.net
    Galera, estou iniciando no django e me parece que vocês tem bastante tempo já com este framework. Acontece que enquanto eu estava testando uma pequena app desenvolvida para aprendizado, tive um problema com alguns caracteres ao tentar salvar dados em um model, procurei e procurei soluções na net e até achei uma mas que não me parece muito correta.

    Queria saber, se vocês conhecem uma forma mais correta, mais elegante de modificar o char coding default para a app, do que fazer o reload do sys, dentro do código.

    A forma que encontrei na internet foi a seguinte:
    ...
    reload(sys)
    sys.setdefaultencoding(utf8)
    ...

    Agradeço desde já. 

    Gabriel Marcondes

    unread,
    Nov 18, 2016, 7:22:04 PM11/18/16
    to python...@googlegroups.com
    Gabriel,

    Você não especificou qual foi o seu problema de encoding. Se postar aqui mais detalhes (como as mensagens de erro e os tracebacks) a gente pode te ajudar melhor, mas dá pra te adiantar algumas coisas para evitá-los:

    - definir o encoding na hora de criar o banco de dados;
    - definir o encoding do seu arquivo python (com # coding: utf8 na primeira linha) caso esteja usando python 2;
    - usar python 3

    O link que você postou diz, inclusive, pra você *nunca* usar essa solução do setdefaultencoding (que eu nunca tinha visto antes, aliás).

    []s,


    --
    --
    ------------------------------------
    Grupo Python-Brasil
    http://www.python.org.br/wiki/AntesDePerguntar
     
    <*> Para visitar o site do grupo na web, acesse:
    http://groups.google.com/group/python-brasil
     
    <*> Para sair deste grupo, envie um e-mail para:


    ---
    Você recebeu essa mensagem porque está inscrito no grupo "Python Brasil" dos Grupos do Google.
    Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para python-brasil+unsubscribe@googlegroups.com.

    Para mais opções, acesse https://groups.google.com/d/optout.



    --
    ---
    Gabriel Marcondes
    Engenheiro de Computação - UFSCar

    Marcelo Valle (BLOOMBERG/ LONDON)

    unread,
    Nov 21, 2016, 5:28:50 AM11/21/16
    to python...@googlegroups.com, gabrielm...@gmail.com
    Com python 2.7 eu simplesmente coloco #-*- coding: utf-8 -*- na primeira linha

    Renzo Nuccitelli

    unread,
    Nov 21, 2016, 3:01:59 PM11/21/16
    to python...@googlegroups.com, gabrielm...@gmail.com

    Segue blogpost que escrevi sobre o assunto por conta da recorrencia: http://blog.renzo.pro.br/2015/08/strings-em-python.html?m=1


    --
    --
    ------------------------------------
    Grupo Python-Brasil
    http://www.python.org.br/wiki/AntesDePerguntar
     
    <*> Para visitar o site do grupo na web, acesse:
    http://groups.google.com/group/python-brasil
     
    <*> Para sair deste grupo, envie um e-mail para:


    ---
    Você recebeu essa mensagem porque está inscrito no grupo "Python Brasil" dos Grupos do Google.
    Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para python-brasi...@googlegroups.com.

    Para mais opções, acesse https://groups.google.com/d/optout.
    --
    Renzo Nuccitelli

    Eu leio email somente uma vez por dia. Se o assunto for urgente, me ligue.


    Reply all
    Reply to author
    Forward
    0 new messages