mudar o nome da aplicação no admin do Django

937 views
Skip to first unread message

erico

unread,
May 20, 2010, 5:00:36 PM5/20/10
to Django Brasil
Sei que eh mais facil criar as apps com os nomes desejados, mas aqui
http://blog.stiod.com/2008/10/22/mudar-o-nome-da-aplicacao-no-admin-do-django/
tinha uma dica interessante e que não encontrei no google.

Gostaria de saber pq algumas vezes quer muda-las para caixa baixa,
caixa alta, enfim fazer as mudanças que me vierem a cabeça.


python manage.py startapp controle_do_site
o resultado eh: Controle_Do_Site, e é isso que gostaria de renomear.

Dicas?




--
Django Brasil em Google Groups <http://groups.google.com.br/group/django-brasil>
Associe-se à Python Brasil e suporte nossa comunidade! <http://associacao.python.org.br/>

Olavo Shibata

unread,
May 20, 2010, 9:44:28 PM5/20/10
to django...@googlegroups.com
Nunca fiz isso, logo não posso te ajudar, mas recuperei o que tinha no link quebrado que vc passou, onde existia a dica, talvez ajude.


"

Mudar o nome da aplicação no admin do Django

Postado por Rafael Sierra em 22/10/2008

Atenção! Pode conter links inúteis

É incrivel, passei meus ultimos um ano e meio trabalhando em empresas de terceiros, porém, eu não sentia aquele prazer que só um verdadeiro programador sente ao programar.
Mãs! Tudo mudou quando decidimos (eu e mais 4 socios) que era hora de tocar a empresa seriamente, então eu sai da empresa onde trabalhava e segui viagem para minha própria empresa.
Bom, enrolei muito já, vamos ao que interessa.
Você já deve ter se revoltado com o Django, mais precisamente com o aplicativo Admin, quando você era obrigado a aceitar uma versão capitalizada (no sentido da primeira-letra-maiúscula, e não financeiro) do nome do seu aplicativo na tela inicial da administração.

|aqui tinha uma imagem, que não teve como recuperar|

Porém, agora sei que é possivel modificar esse nome que fica com fundo azul, tudo graças a uma introspecção no código do Django, algo que eu dificilmente faria trabalhando para terceiros (esse foi o motivo de eu ter escrito aquelas abobrinhas ali em cima :P ), e ao que tudo indica, essa "funcionalidade", não está documentada (pelo menos não foi fácil encontrar informações sobre isso, tanto que devo um link
aqui).
Pra resolver esse problema é simples, basta editar o model desejado e adicionar dentro da classe Meta um atributo chamado "app_label" (repare que ele não se encontra na documentação), e com isso o model será agrupado no nome que você der para ele, o interessante, é que você pode agrupar varios aplicativos dentro de uma só tabela, desde que todos os models tenham o mesmo nome no app_label.
Mas o mais bizarro mesmo, é que você pode modificar o app_label de outros aplicativos que não fazem parte do seu projeto, por exemplo, ao adicionar as seguintes linhas em algum model.py seu:

1.
2. from django.contrib.auth.models import User
3. User._meta.app_label = "AWAAAY"
4.

Você vai jogar o modelo User pra dentro da tabela AWAAAAY.
Só gostaria de deixar claro que usar essa "funcionalidade" (não sei se isso seria realmente uma funcionalidade, já que não está documentada) pode resultar em comportamentos adversos (do projeto, não seus), uma vez que eu não estudei completamente o código-fonte do Django pra saber até onde vão os efeitos desse atributo.
So, have fun with moderation.
Em tempo: Estou com o Django-1.0
Nota de copyright: A imagem que utilizei aqui pertence ao site http://djangoproject.com

"

2010/5/20 erico <eric...@gmail.com>



--
att,
Olavo Shibata

-----------------------------------------
"O que sabemos sobre conhecimento nos mostra que quanto mais colaborativo for o processo de sua produção, maior será o avanço"
Lea Velho - Prof. do DPC-T

marcos thomaz

unread,
May 20, 2010, 10:34:06 PM5/20/10
to django...@googlegroups.com
Essa dica é legal e funciona, porém as vezes, o syncdb para de funcionar. Não é sempre, mas ocorre (pelo menos comigo ocorreu).
 
[]'s

Marcos Thomaz



De: Olavo Shibata <olavos...@gmail.com>
Para: django...@googlegroups.com
Enviadas: Quinta-feira, 20 de Maio de 2010 22:44:28
Assunto: Re: mudar o nome da aplicação no admin do Django

Gileno Alves

unread,
May 21, 2010, 1:41:49 PM5/21/10
to django...@googlegroups.com
Isso é importante quando você tem uma app com muitos models e não quer seguir o padrão colocando tudo no arquivo "models.py"
Se por acaso você resolver criar 2 arquivos para colocar seus models: "basic.py" e "others.py" cada model deve ter essa meta informação (eu acho que se não colocar essa informação da pau)

2010/5/20 marcos thomaz <marcos...@yahoo.com.br>



--
Abraços
Gileno Filho

Edgard

unread,
May 21, 2010, 2:36:28 PM5/21/10
to Django Brasil
Com essas duas linhas consigo renomear uma aplicação gerada areavés
do: "python manage.py startapp uma_aplicacao_do_django ?
Utilizando essas duas linhas no meus models.py?

from django.db import models
from datetime import datetime
from django.contrib.auth.models import User
User._meta.app_label = "uma aplicação do django"

Aqui não surtiu efeito algúm.



On 21 maio, 14:41, Gileno Alves <gascf....@gmail.com> wrote:
> Isso é importante quando você tem uma app com muitos models e não quer
> seguir o padrão colocando tudo no arquivo "models.py"
> Se por acaso você resolver criar 2 arquivos para colocar seus models:
> "basic.py" e "others.py" cada model deve ter essa meta informação (eu acho
> que se não colocar essa informação da pau)
>
> 2010/5/20 marcos thomaz <marcosthom...@yahoo.com.br>
>
>
>
> > Essa dica é legal e funciona, porém as vezes, o syncdb para de funcionar.
> > Não é sempre, mas ocorre (pelo menos comigo ocorreu).
>
> > []'s
>
> > Marcos Thomaz
>
> > ------------------------------
> > *De:* Olavo Shibata <olavoshib...@gmail.com>
> > *Para:* django...@googlegroups.com
> > *Enviadas:* Quinta-feira, 20 de Maio de 2010 22:44:28
> > *Assunto:* Re: mudar o nome da aplicação no admin do Django
> > 2010/5/20 erico <erico...@gmail.com>
>
> >> Sei que eh mais facil criar as apps  com os nomes desejados, mas aqui
>
> >>http://blog.stiod.com/2008/10/22/mudar-o-nome-da-aplicacao-no-admin-d...

Gileno Alves

unread,
May 21, 2010, 3:34:22 PM5/21/10
to django...@googlegroups.com
Não. Aquela referência era so para dizer que você pode mudar a app de qualquer model.
É assim:
class MyModel(models.Model):
    some_field = models.TextField()
    class Meta:
        app_label = 'New_App_Label'


2010/5/21 Edgard <eap...@gmail.com>

Olavo Shibata

unread,
May 24, 2010, 10:08:43 PM5/24/10
to django...@googlegroups.com
mas fazer isso que o Gileno falou, da pau ou não da pau? o pau que o Marcos Thomaz comentou

2010/5/21 Gileno Alves <gasc...@gmail.com>

Luiz Carlos Santos

unread,
May 24, 2010, 11:50:41 PM5/24/10
to django...@googlegroups.com
Cara tem esse aplicativo mas não conseguir "from django.conf import app"

Luiz Carlos

Olavo Shibata

unread,
May 24, 2010, 11:58:55 PM5/24/10
to django...@googlegroups.com
ah soh, vou pesquisar por isso, fiz isso que o Gileno falou e até funcinou, criou um novo label e ficou bacana, só que quando clica ele procura pelo label anterior e da pau.

2010/5/25 Luiz Carlos Santos <h2o...@gmail.com>

--
att,
Olavo Shibata

-----------------------------------------
"O que sabemos sobre conhecimento nos mostra que quanto mais colaborativo for o processo de sua produção, maior será o avanço"
Lea Velho - Prof. do DPC-T

Luiz Carlos Santos

unread,
May 25, 2010, 12:04:28 AM5/25/10
to django...@googlegroups.com
já tentei e dar pau mesmo...
Cara tem um jeito de mudar o nome da aplicação no Djando...

É muito estranho....ninguém teve essa necessidade

Luiz Carlos Santos

unread,
May 25, 2010, 12:09:36 AM5/25/10
to django...@googlegroups.com
olhar esse http://code.djangoproject.com/ticket/3591
se consegui retorna

Gileno Alves

unread,
May 25, 2010, 1:27:03 PM5/25/10
to django...@googlegroups.com
Estranho a app que tem essa modificação aqui não da pau :(

2010/5/25 Luiz Carlos Santos <h2o...@gmail.com>



--
Abraços
Gileno Filho

Luiz Carlos Santos

unread,
May 25, 2010, 4:04:36 PM5/25/10
to django...@googlegroups.com
Como você faz? estou tentando pelo o settings?

Luiz Carlos

Reply all
Reply to author
Forward
0 new messages