Ausführen einer Rake-Aufgabe innerhalb der Migration?

Ich habe eine Rake-Task, die Konfigurationsdaten aus einer Datei in die DB lädt. Gibt es eine richtige Ruby / Rails-Methode, um sie bei einer Migration aufzurufen?

Mein Ziel ist es, meine Team-DB-Konfigurationen zu synchronisieren,ohne dann Broadcast senden zu müssen, um die Aufgabe auszuführen lalala

  def self.up
    change_table :fis_situacao_fiscal do |t|
      t.remove :mostrar_endereco
      t.rename :serie, :modelo 
    end

    Faturamento::Cfop.destroy_all()
    #perform rake here !
  end

AKTUALISIERE Wie ich es jetzt mache und arbeite:

system('rake sistema:load_data file=faturamento/cfop')

Und das ist der Vorschlag von@ Ryan Bigg, und es ist eine Ausnahme:

Rake::Task['rake sistema:load_data file=faturamento/cfop'].invoke()

.

==  AlterSituacaoFiscalModeloEndereco: migrating ====================
-- change_table(:fis_situacao_fiscal)
   -> 0.0014s

rake aborted!
An error has occurred, this and all later migrations canceled:

Don't know how to build task 'rake sistema:load_data file=faturamento/cfop'

Wo ist es schief gelaufen?

Antworten auf die Frage(4)

Ihre Antwort auf die Frage