Как можно переместить модели Django, подобные миграциям Ruby on Rails?

В этом случае вам необходимо прослушать NavigationEvents , потому что компоненты уже смонтированы, но didFocus будет вызываться каждый раз, когда представление получает фокус.

Вот пример кода из документов:

import React from 'react';
import { View } from 'react-native';
import { NavigationEvents } from 'react-navigation';

const MyScreen = () => (
  
     console.log('will focus',payload)}
      onDidFocus={payload => console.log('did focus',payload)}
      onWillBlur={payload => console.log('will blur',payload)}
      onDidBlur={payload => console.log('did blur',payload)}
    />
    {/* 
      Your view code
    */}
  
);

export default MyScreen;

6
задан Huuuze 12 May 2009 в 15:04
поделиться

4 ответа

South has the most steam behind it. dmigrations is too basic IMO. django-evolution screams if you ever touch the db outside of it.

South is the strongest contender by far. With the model freezing and auto-migrations it's come a long way.

10
ответ дан 8 December 2019 в 13:02
поделиться

South и django-evolution, безусловно, лучшие варианты. По моему опыту, замораживание моделей и авто-хинтинг в South все еще довольно хрупкие (хинтинг django-evolution намного надежнее в крайних случаях), но разработка django-evolution, похоже, в основном застопорилась с прошлого лета. Если бы я начинал сейчас, я бы, наверное, выбрал Юг, в основном по этой причине.

5
ответ дан 8 December 2019 в 13:02
поделиться

Я являюсь членом команды, которая разработала миграции, но я всем сердцем рекомендую Юг. Он намного более зрелый, находится в активной разработке и имеет некоторые убийственные функции, такие как замораживание ORM (если вы попытаетесь использовать код ORM в миграции, а затем измените свои модели, вас ждет мир боли).

1
ответ дан 8 December 2019 в 13:02
поделиться

Прочитав это, я перешел от «ничего не зная об эволюции модели данных» к «использованию юга для управления миграцией модели» менее чем за 1 час. Документация Саут великолепна, и я быстро освоился. Не взглянув на другие упомянутые инструменты, я полностью рекомендую его.

Обновление: с момента публикации этого ответа около месяца назад я просмотрел несколько моделей данных, начиная от простого переименования полей и заканчивая полной заменой некоторых таблиц новыми. South не может делать все полностью автоматически (например, переименование выглядит как удаление и добавление), но документация плавно проведет вас через ручные шаги.

Я внесу юг в любой будущий проект. Фантастический инструмент!

2
ответ дан 8 December 2019 в 13:02
поделиться
Другие вопросы по тегам:

Похожие вопросы: