Полное руководство по типам столбцов миграции Rails

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

  1. Строка.
    Строковый тип столбца используется для хранения текстовых данных короткой и средней длины.
class AddNameToUsers < ActiveRecord::Migration[6.0]
  def change
    add_column :users, :name, :string
  end
end
  1. Текст.
    Тип текстового столбца подходит для более длинных текстовых данных.
class AddDescriptionToArticles < ActiveRecord::Migration[6.0]
  def change
    add_column :articles, :description, :text
  end
end
  1. Целый:
    Целый тип столбца используется для хранения целых чисел.
class AddAgeToUsers < ActiveRecord::Migration[6.0]
  def change
    add_column :users, :age, :integer
  end
end
  1. Float:
    Тип столбца с плавающей запятой предназначен для хранения десятичных чисел.
class AddPriceToProducts < ActiveRecord::Migration[6.0]
  def change
    add_column :products, :price, :float
  end
end
  1. Десятичный:
    Десятичный тип столбца подходит для точных десятичных чисел.
class AddDiscountToProducts < ActiveRecord::Migration[6.0]
  def change
    add_column :products, :discount, :decimal, precision: 10, scale: 2
  end
end
  1. Логическое значение:
    В столбце логического типа хранятся значения true или false.
class AddAdminToUsers < ActiveRecord::Migration[6.0]
  def change
    add_column :users, :admin, :boolean, default: false
  end
end
  1. Дата.
    Тип столбца даты используется для хранения дат без времени.
class AddBirthdayToUsers < ActiveRecord::Migration[6.0]
  def change
    add_column :users, :birthday, :date
  end
end
  1. DateTime:
    В столбце типа datetime хранится информация о дате и времени.
class AddPublishedAtToArticles < ActiveRecord::Migration[6.0]
  def change
    add_column :articles, :published_at, :datetime
  end
end
  1. Время.
    Тип столбца времени предназначен для хранения значений времени.
class AddStartTimeToEvents < ActiveRecord::Migration[6.0]
  def change
    add_column :events, :start_time, :time
  end
end
  1. Двоичный:
    В столбце двоичного типа хранятся двоичные данные.
class AddAvatarToUsers < ActiveRecord::Migration[6.0]
  def change
    add_column :users, :avatar, :binary
  end
end

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