Ruby on Rails: можно ли использовать доступ к базе данных старой школы без миграции? - PullRequest
0 голосов
/ 30 июля 2010

Я перехожу на RoR из ASP.NET MVC.Да, миграции это круто, но мне не нужно использовать разные базы данных в моих веб-приложениях.Postgresql все сделает хорошо.

Так ли это нормально, если я использую PGAdmin для создания и администрирования своих баз данных и схемы и избегу всего этого необычного переноса , рейка и т. Д.

Обновление

Спасибо всем!Теперь я лучше понимаю, что такое миграции, и почему я должен использовать их.

Ответы [ 3 ]

8 голосов
/ 30 июля 2010

Я не думаю, что это означает миграцию.

Миграции в рельсах (и в других средах) - это метод, с помощью которого можно обновить схему базы данных , когда естьнесколько версий одной и той же базы данных , работающей

Например, у вас может быть две базы данных: одна работает на рабочем сервере, а другая - локально для разработки.После нескольких дней написания кода ваша локальная база данных разработки может выглядеть немного иначе.С помощью миграций вы можете просто отправить свой код на рабочий сервер, а затем запустить миграции, чтобы автоматически обновить производственную базу данных, чтобы она соответствовала той, которую вы используете локально для разработки.


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

2 голосов
/ 30 июля 2010

Согласитесь с charkit, но одно (а не два) важное замечание, почему вы должны использовать миграции: миграции не составляют определения модели. Они хранятся отдельно в файле schema.rb. Это определяет строки и таблицы вашей базы данных. При просмотре файла вы обнаружите следующие строки:

Этот файл генерируется автоматически из текущего состояния базы данных. Вместо того, чтобы редактировать этот файл, используйте функцию миграции Active Record для постепенного изменения базы данных, а затем повторно создайте это определение схемы.

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


Итак, да, можно использовать PGAdmin для создания всего, что связано с вашей базой данных, но вы не должны забывать постоянно обновлять файл схемы и предлагать решение для тестирования.

1 голос
/ 30 июля 2010

С помощью миграций вы можете разработать схему базы данных в Ruby, и это обычно не зависит от базы данных.

Короче, потратьте 20 минут или около того , чтобы действительно получить миграции и ценность, которую они добавляют.Затем определите, хотите ли вы отказаться от них.Как ни странно, я изучил Rails, прежде чем начал свой первый проект MVC;одна из вещей, которые я пропустил больше всего, это миграция.

С технической точки зрения вам будет хорошо без них.

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