Я использую Jruby и rails 2.2.2. Моя проблема в том, что у меня есть миграция, которая неправильно написана в схеме базы данных.
Вот моя миграция:
class CreateNotes < ActiveRecord::Migration
def self.up
create_table(:notes, :options => 'ENGINE=MyISAM') do |t|
t.string :title
t.text :body
t.timestamps
end
execute "alter table notes ADD FULLTEXT(title, body)"
end
Вот что он производит в schema.rb
create_table "notes", :force => true do |t|
t.string "title"
t.text "body"
t.datetime "created_at"
t.datetime "updated_at"
end
add_index "notes", ["title", "body"], :name => "title"
У меня есть два вопроса:
- Как мне получить
'ENGINE=MyISAM'
в схеме? - Почему мой оператор выполнения стал
add_index "notes", ["title", "body"], :name => "title"
? и как мне заставить миграции оставить его в качестве оператора выполнения?
Спасибо Кристиану Лескуйеру за ответ. Однако, когда я это пробовал, ничего не изменилось. Я раскоментировал строку config.active_record..., но моя схема не изменилась. Я пробовал это в jruby и на ruby 1.8.6 с рельсами 2.2.2 и рельсами и в схеме не было изменений. Может ли кто-нибудь сказать мне, что я делаю неправильно?