Open andyryan opened 9 years ago
May this help you.
# This migration comes from acts_as_taggable_on_engine (originally 1)
class ActsAsTaggableOnMigration < ActiveRecord::Migration
def self.up
create_table :tags do |t|
t.string :name, limit: 191 # note here--------------------------
end
create_table :taggings do |t|
t.references :tag
# You should make sure that the column created is
# long enough to store the required class names.
t.references :taggable, polymorphic: { limit: 191 } # note here--------------------------
t.references :tagger, polymorphic: { limit: 191 } # note here--------------------------
# Limit is created to prevent MySQL error on index
# length for MyISAM table type: http://bit.ly/vgW2Ql
t.string :context, limit: 128
t.datetime :created_at
end
add_index :taggings, :tag_id
add_index :taggings, [:taggable_id, :taggable_type, :context]
end
def self.down
drop_table :taggings
drop_table :tags
end
end
cam somebody give @FlowerWrong an oscar?
Since google search only seems to bring up resents in japanese for this I am posting it here.
The ActsAsTaggableOnMigration fails with the following error
Mysql2::Error: Specified key was too long; max key length is 767 bytes: CREATE INDEX
index_taggings_on_taggable_id_and_taggable_type_and_context
ONtaggings
(taggable_id
,taggable_type
,context
)I have the feeling it has something to do with my database using utf8mb4 character encoding (required for emoji support)
I have not modified the migration in any way