2015-06-15 2 views
0

Я настраиваю публичный API для своего приложения. Я хочу отделить код API от кода приложения, поэтому я помещаю его в новый проект django и использую «Django REST Framework» для создания лесов для общедоступных сервисов API.Импорт моделей из другого проекта Django

Я борюсь с тем, как синхронизировать модели между моим основным проектом приложения, и этот новый проект Django для разработки API ... может продолжаться в проекте приложения, что требует изменений моделей, и я бы хотел эти модели будут распространяться на проект API.

Есть ли способ указать или импортировать модели из другого проекта Django?

ответ

0

Не было бы проблем с безопасностью, если бы внешний сайт определял, как выглядит структура вашего db? Любая проблема (или человек в средней атаке) может полностью изменить (или уничтожить) вашу базу данных, если вы ничего не сделаете.

Я бы сказал, что лучше иметь версии API, чем то, о чем вы просите. Я бы предпочел одновременное использование двух одновременных версий, чтобы дать время пользователям API обновлять свои схемы, чем принудительно обновлять их схемы и данные. И вообще, если это возможно, я бы использовал только одну версию API, стараясь всегда поддерживать совместимость со старыми реализациями.

Но я просто говорю, что для общедоступного API я не знаю, насколько открытым должен быть ваш API и насколько близки ваши разработки (API и потребитель), поэтому я могу быть полностью вне сферы действия!

+0

Я не думаю, что есть проблема безопасности: у меня есть код приложения и код api на отдельных инфраструктурах, которые могут масштабироваться независимо, но я хочу связать их с теми же моделями ... – jjt143

+0

Поэтому я, вероятно, модель в приложении, используемом обоими проектами, позволяя вам иметь одну точку изменения (это приложение), которая распространяется на оба проекта (но мне никогда не приходилось это делать, поэтому я мало что знаю об этом). Кроме того, даже если мне стыдно за то, что я не делаю этого для каждого проекта, я думаю, что разработка API - это, как правило, лучший вариант использования для TDD, поскольку тесты, которые вы напишете для этого, будут именно тем, что ждет ваш пользователь API для. – BriceP

Смежные вопросы