Skip to content

Conversation

@alex-msk
Copy link
Contributor

@alex-msk alex-msk commented Nov 9, 2021

К Issue #45 .

Если у контакта в CRM несколько E-mail или телефонов одного типа(несколько рабочих e-mail`ов), возвращаться будут несколько.

image

  • Если e-mail / телефон один, будет как и раньше возвращаться строка с этим значением(так работает сейчас)
  • Если e-mail`ов / телефонов несколько, они будут возвращаться в виде массива
  • Если E-mail`ов / телефонов нет, возвращаться будет None

@Krukov
Copy link
Owner

Krukov commented Nov 12, 2021

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

class ContactPhonesField(TextCustomField):
    ...
    
class ContactEmailsField(TextCustomField):
    ...

и хотел еще предложит что бы вместе с телефонами возвращались их енумы ( по типу WORK)
может возвращать какойто список namedtuple аля namedtuple('Phone', ['value', 'enum'])

@alex-msk
Copy link
Contributor Author

Да, тоже думал об обратной совместимости.
Поправлю. В принципе это решение.

А зачем там ENUM? enum же и без того указан в модели, только он и будет в выдаче.

@Krukov
Copy link
Owner

Krukov commented Nov 12, 2021

А я думал с одним енумом 2 значений не бывает ? Сейчас поищу в документации

@Krukov
Copy link
Owner

Krukov commented Nov 12, 2021

все сори - туплю ( у тебя же на картинке все видно) да конечно не надо тогда namedtuple

@alex-msk
Copy link
Contributor Author

Хотя, я вот вижу, что у тебя в соседней ветке лежит изменение. Если я правильно понимаю его суть, то возвращаться будут все телефоны если не указывать enum. Я правильно понимаю? Если да, то возврат enum для таких полей, наверное был бы уместен. Как поступисм?

@Krukov
Copy link
Owner

Krukov commented Nov 12, 2021

Вообще кода ты изначально описывал проблему я подумал что енумы разные поэтому и так сделал, но я думаю твое решение правильнее и что если енумы отличаются то должно быть отдельное 'поле' под каждый енум

Вообщем я за твое решение

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants