Доступ к базе данных из другого места
На собеседовании я получил задание создать CRUD с помощью Django и Postgresql. Я создал базу данных локально и выполнил задание.
Теперь я должен загрузить свой код на github. Проблема в том, что они просят предоставить несколько примеров CRUD. Разработчик, который просматривает мой код, очевидно, не может получить доступ к моей локальной БД.
Что я могу сделать, чтобы решить эту проблему? Нужно ли мне загрузить мою БД в облако (если да, то какой лучший способ это сделать)? Или есть другой способ решить эту проблему?
Заранее спасибо
Когда они загрузят ваш код, им нужно будет создать свою локальную базу данных, запустить python manage.py makemigrations и python manage.py migrate, после чего все таблицы базы данных будут созданы. Однако начальных данных не будет.
Я рекомендую загрузить ваш код и выполнить все шаги, необходимые для запуска проекта. Это будет включать такие вещи, как создание пользователя admin и т.д. Затем создайте базовый README со всеми шагами, чтобы максимально облегчить им работу.
В качестве альтернативы вы можете докеризировать свое приложение и предоставить Dockerfile, но это, на мой взгляд, немного перебор для интервью на дому. Тем не менее, это может произвести впечатление на интервьюера. Возможно, они даже не захотят скачивать и запускать ваш проект, а просто просмотрят ваш код на Github.
Для обеспечения начальных данных, вы бы хотели рассмотреть возможность написания fixtures. Затем запустите их python manage.py dumpdata для заполнения базы данных.
Просто загрузите его на Heroku или что-то подобное. У вас уже есть postgres в качестве базы данных, так что это верный способ. Это довольно просто с помощью руководства Heroku official guide для django-приложений. У меня был такой же вопрос в процессе найма, и это решение удовлетворило рекрутера.
База данных, очевидно, будет пустой, если вы не подготовите некоторые приспособления, что является очень хорошей идеей. В документации по Django есть кое-что для этого.