Добавих няколко модела в моите models.py и искам да добавя класа в администратора, за да използва редактор wysiwyg в текстови полета.
Знам, че самият Джанго не подкрепя миграциите и че съм използвал Юг, но също така не работи.
Югът не вижда "промяната".
Възможно ли е, че Южна просто открива промени в полетата, но не и ако добавя нов клас?
Как мога да ощипвам Джанго да открие такива промени?
Отговори:
1 за отговор № 1Изглежда си много объркана, за съжаление. Разбира се, Джанго чете кода в models.py - иначе какъв ще е смисълът му? Django първоначално използва този код, за да дефинира SQL модела, когато прави syncdb, но не променя съществуващата база данни маси в следващите обаждания до syncdb - оттук и нуждата от Юг.
Но естествено, Django използва models.py и admin.py и всички други Python кодове, за да определи собствената си конфигурация и състояние. (И имайте предвид, че класовете на администраторите не са дефинирани в models.py, а в admin.py.)
Ако не виждате промени, ще трябва да рестартирате сървъра си.
2 за отговор № 2
syncdb
и Юг се занимават само с потомците на Model
в приложенията, изброени в INSTALLED_APPS
, Всичко останало се управлява пряко от Джанго.
1 за отговор № 3
Сигурен съм, че ако следвате стъпките катоочертано в урока за създаване на приложение за администрация, в което то просто ще работи. Миграцията не е проблем, тъй като администраторското приложение създава нови таблици, а не променя съществуващата.