Создает ли django чистую базу данных?

#django #database-design #maintainability

#django #база данных-дизайн #ремонтопригодность

Вопрос:

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

При создании сайта с использованием django создается ли чистая база данных? Например, разработчики веб-сайтов wysiwyg, такие как dreamweaver, создают уродливый html и css-код на серверной части. Мне бы не хотелось видеть подобную степень автоматически сгенерированного мусора в моей базе данных.

Должен ли я создать базу данных сам, а затем создать сайт django для доступа к базе данных, или пойти дальше и позволить django создать базу данных?

Комментарии:

1. Ваш вопрос: помещает ли django html и css в базу данных? Если это ваш вопрос, то ответ таков: нет, django не помещает HTML и CSS в базу данных.

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

3. Если вы попробуете Django, убедитесь, что используете South, virtualenv и pip. Я не могу подчеркнуть, насколько полезны эти три инструмента.

Ответ №1:

В любом простом или умеренно сложном приложении Django прекрасно справится с созданием базы данных за вас. Мне еще предстоит столкнуться с какими-либо проблемами с тем, что она создала.

Я бы посоветовал вам использовать South для обработки миграции таблиц. И используйте virtualenv и pip для настройки и обслуживания вашей среды Django.

Ответ №2:

Вы можете использовать sqlall предикат manage.py , чтобы увидеть точный SQL, который будет выполнен для создания базы данных.

Ответ №3:

Очевидно, что django нужны таблицы базы данных для его базовой функциональности (contrib.apps).

Конечно, вам не обязательно их использовать, но обычно вы хотите использовать наименьший contrib.auth и некоторые другие приложения в комплекте:

Однако каждое из этих приложений использует по крайней мере одну таблицу базы данных, поэтому нам нужно создать таблицы в базе данных, прежде чем мы сможем их использовать.

В любом случае вы не можете и не должны сравнивать это с уродливым HTML-кодом, сгенерированным dreamweaver или word.


На более абстрактном уровне:

Одна из ключевых концепций веб-фреймворка (следуя шаблону mvc) заключается в том, что вы определяете модели, которые «транслируются» (отображаются) фреймворком в таблицы базы данных.

Модель — это единственный, окончательный источник данных о ваших данных. Она содержит необходимые поля и параметры поведения данных, которые вы сохраняете. Как правило, каждая модель сопоставляется с одной таблицей базы данных.

Если вы хотите создать всю схему базы данных вручную, вы совершенно упустили смысл использования веб-фреймворка. В большинстве случаев вам просто не нужно писать sql вручную. Вы определяете свои классы, а затем можете запрашивать свои объекты, используя встроенный orm.

Комментарии:

1. Я знаю, что для этого нужны таблицы базы данных. Мне было интересно, создает ли он хорошую чистую структуру базы данных. Спасибо за ваш ответ.