/ / Como adicionar uma classe Admin a um modelo após o syncdb? - python, django, django-models, django-south

Como adicionar uma classe Admin a um modelo após o syncdb? - python, django, django-models, django-south

Eu adicionei alguns modelos no meu models.py e eu quero adicionar uma classe de administração para usar um editor wysiwyg em campos de texto.
Bem, eu sei que o Django em si não suporta migrações e eu usei o Sul, mas ele também não funciona.
O Sul não "vê" a mudança.
Será que Sul só detecta mudanças nos campos, mas não se eu adicionar uma nova classe?
Como eu posso ajustar o Django para detectar essas mudanças?

Respostas:

1 para resposta № 1

Você parece estar muito confuso, infelizmente. É claro que o Django lê o código em models.py - caso contrário, qual seria o sentido disso? O Django usa esse código inicialmente para definir o modelo SQL ao fazer o syncdb, mas ele não modifica o banco de dados existente mesas em chamadas subseqüentes ao syncdb - daí a necessidade do Sul.

Mas, naturalmente, o Django usa models.py e admin.py e todos os outros códigos Python para definir sua própria configuração e estado. (E note que as classes admin não estão definidas em models.py mas em admin.py.)

Se você não estiver vendo as alterações, será necessário reiniciar o servidor.


2 para resposta № 2

syncdb e Sul estão preocupados apenas com descendentes de Model nos aplicativos listados em INSTALLED_APPS. Tudo o resto é tratado pelo Django diretamente.


1 para resposta № 3

Tenho quase certeza que se você seguir os passosdelineado no tutorial para criar um aplicativo administrativo, ele simplesmente funcionará. A migração não é um problema, pois o aplicativo administrativo cria novas tabelas em vez de alterar a existente.