Проектирование добавления поля телефонного номера в профиль пользователя Тильды

Спроектируйте поле телефона как расширение профиля: ввод и ошибки в UI, чтение и PATCH на backend, nullable строка в БД. Проверка владения профилем обязательна.

Короткий ответ

Что ответить на собеседовании

Спроектируйте поле телефона как расширение профиля: ввод и ошибки в UI, чтение и PATCH на backend, nullable строка в БД. Проверка владения профилем обязательна.

Подробный разбор

Ответ с пояснениями

Условие

Необходимо спроектировать расширение формы редактирования профиля пользователя Тильды, включив в неё поле для ввода телефонного номера. В текущей версии формы присутствуют поля: имя и электронная почта.

Работа делится на три этапа:

  1. Проектирование пользовательского интерфейса (создать схемы экранов, необходимых для реализации функции).
  2. Проектирование API‑методов (определить запросы и ответы, необходимые для сохранения и получения телефонного номера).
  3. Проектирование структуры базы данных (разработать таблицы и поля, где будет храниться телефонный номер).

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

Ответ

Спроектируйте поле телефона как расширение профиля: ввод и ошибки в UI, чтение и PATCH на backend, nullable строка в БД. Проверка владения профилем обязательна.

Возможный проектный API — GET /me и PATCH /me с phone; это не утверждение о действующих ручках Тильды. UI показывает код страны, сохранение, ошибку формата и возможность очистить номер. Backend нормализует значение и проверяет допустимость; хранить телефон числом нельзя. Если он участвует в авторизации или уведомлениях с подтверждением, добавьте phone_verified_at и отдельный процесс проверки нового номера.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее