PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

Dois-je supprimer le champ d'identification par défaut lors de l'utilisation d'une clé primaire de chaîne dans Rails/Postgres ?

Selon ceci post, ça devrait résoudre le problème :

class CreateEmployees < ActiveRecord::Migration
  def change
    create_table :employees, {:id => false} do |t|
      t.string :employment_id, :unique => true
      etc...
    end
  end
  execute "ALTER TABLE employees ADD PRIMARY KEY (employment_id);"
end

Également dans votre modèle :

class Employee < ActiveRecord::Base
  set_primary_key :employment_id
  ...
end