Method: ActiveRecord::ModelSchema::ClassMethods#sequence_name=

Defined in:
lib/active_record/model_schema.rb

#sequence_name=(value) ⇒ Object

Sets the name of the sequence to use when generating ids to the given value, or (if the value is nil or false) to the value returned by the given block. This is required for Oracle and is useful for any database which relies on sequences for primary key generation.

If a sequence name is not explicitly set when using Oracle or Firebird, it will default to the commonly used pattern of: ##table_name_seq

If a sequence name is not explicitly set when using PostgreSQL, it will discover the sequence corresponding to your primary key for you.

class Project < ActiveRecord::Base
  self.sequence_name = "projectseq"   # default would have been "project_seq"
end


212
213
214
215
# File 'lib/active_record/model_schema.rb', line 212

def sequence_name=(value)
  @original_sequence_name = @sequence_name if defined?(@sequence_name)
  @sequence_name          = value.to_s
end