Джанго: курица или яйцо - PullRequest
3 голосов
/ 16 января 2010

Я создаю приложение, которое отправит вызов API и сохранит полученную информацию после обработки информации в классе APIRecord(models.Model).

1) Должен ли я создать отдельный класстаким образом, что класс вызывает API, обрабатывает информацию (включая проверку на соответствие бизнес-правилам), а затем создает экземпляр моего APIRecord() класса?

или

2) Должен ли я создать отдельный класс с соответствующими методами для обработки и вызова API, а затем в моей модели переопределить метод APIRecord.save() для вызова методов API отдельного класса и затем сохранить результаты?

Или

3) Должен ли я создать свой класс модели с соответствующими методами для вызова API и обработки ответа (включая проверку определенных значений и других бизнес-правил)?

Я попробовал # 2 и столкнулся с проблемами с гибкостью (но все еще открыт для предложений).Я склоняюсь к # 1, но я еще не уверен во всех негативах?

1 Ответ

1 голос
/ 16 января 2010

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...