Rails 7.1 リリースノートまとめ
- POST
Rails 7.1 リリースノートについてまとめたものを備忘録として残しておく
他バージョンのリリースノートまとめ Rails 7 リリースノートまとめ Rails 7.1 系での新機能および変更点 Dockerfileの生成 新規アプリケーションで Dockerfile が自動生成されるようになった
複合プライマリキーのサポート 複合プライマリキーがサポートされ、マイグレーションや、Active Record のクエリメソッドなど Rails のアプリケーション全般で使用できるようになった
DB に複合プライマリキーを使用したテーブルを作成するには、以下のようにマイグレーションの change_table の primary_key: オプションにカラム名の配列を渡す
class CreateBooks < ActiveRecord::Migration[7.1] def change create_table :books, primary_key: [:store_id, :sku] do |t| t.integer :store_id t.string :sku t.string :name t.text :description end end end 使用例 クエリメソッド Product.find([3, "XYZ12345"]) # store_id: 3, sku: "XYZ12345"を指定 Product.where(Product.primary_key => [[1, "ABC98765"], [7, "ZZZ11111"]]) # store_id: 3, sku: "XYZ12345"とstore_id: 7, sku: "ZZZ11111" Product.