Ускорьте разработку Rails 6: раскрывая возможности нескольких начальных чисел

При работе над проектом Rails 6 заполнение базы данных становится важным для структурированной инициализации данных. Хотя Rails предоставляет исходный файл по умолчанию, знаете ли вы, что в Rails 6 можно иметь несколько исходных файлов? В этой статье мы рассмотрим возможности нескольких исходных кодов и то, как они могут улучшить рабочий процесс разработки. Так что хватайте свой любимый напиток и вперед!

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

  1. Создание исходных файлов.
    Для начала создайте отдельные исходные файлы для разных категорий данных. Например, у вас может быть файл users.seeds.rbдля данных, связанных с пользователем, и файл products.seeds.rbдля данных, связанных с продуктом. Поместите эти файлы в каталог db/seeds.

  2. Загрузка исходных файлов:
    По умолчанию Rails загружает файл db/seeds.rbпри запуске rake db:seed. Чтобы загрузить дополнительные исходные файлы, измените файл db/seeds.rbс помощью метода load. Например, чтобы загрузить файл users.seeds.rb, добавьте следующую строку в db/seeds.rb:

    load(Rails.root.join('db/seeds/users.seeds.rb'))
  3. Условная начальная загрузка.
    Вы можете условно загружать начальные файлы в зависимости от определенных условий или сред. Это может быть полезно, если вы хотите загрузить различные исходные данные для сред разработки, промежуточной или производственной среды. Например, вы можете изменить db/seeds.rbследующим образом:

    load(Rails.root.join('db/seeds/users.seeds.rb')) if Rails.env.development?
  4. Использование начальных зависимостей.
    Иногда определенные исходные данные могут зависеть от присутствия в базе данных других исходных данных. В таких случаях вы можете использовать метод require_dependency, чтобы обеспечить порядок выполнения. Например:

    require_dependency Rails.root.join('db/seeds/users.seeds.rb').to_s
    require_dependency Rails.root.join('db/seeds/products.seeds.rb').to_s
  5. Упорядочение исходных данных.
    Чтобы контролировать порядок загрузки исходных данных, добавьте к именам исходных файлов числа или временные метки. Например, 001_users.seeds.rb, 002_products.seeds.rbи т. д. Rails загрузит исходные файлы в порядке возрастания.

  6. Задача рейка для определенных сид-файлов.
    Если вам часто требуется загружать определенные сид-файлы, вы можете создать собственную задачу рейка. Определите задачу в своем каталоге lib/tasksи укажите исходные файлы для загрузки с помощью метода load. Например:

    namespace :db do
    desc 'Load users and products seed data'
    task seed_users_and_products: :environment do
    load(Rails.root.join('db/seeds/users.seeds.rb'))
    load(Rails.root.join('db/seeds/products.seeds.rb'))
    end
    end

Поздравляем! Вы раскрыли потенциал нескольких начальных значений в Rails 6. Организуя начальные данные в отдельные файлы и используя различные методы, которые мы обсуждали, вы можете улучшить рабочий процесс разработки и сделать свою кодовую базу более удобной для сопровождения. Так что вперед, экспериментируйте с несколькими начальными числами и наблюдайте за процветанием вашего приложения Rails!