Frage

Die Redmine Plugin -Tutorials erklären, wie Sie Kernmodelle einwickeln, aber ich brauche eine weitere Spalte in die Zeitschriftentabelle. Ich brauche ein Boolean -Feld, das in das Journals -Modell eingefügt wurde. Das Erstellen eines anderen Modells mit einer Beziehung von 'adocs_to: Journal' scheint ein Overkill zu sein. Kann dies mit einem Plugin erfolgen? Ich sollte beachten, dass ich ein Rails -Neuling bin.

War es hilfreich?

Lösung

Sie müssen nur das angemessene erstellen Migration.

Erstellen Sie im Verzeichnis Ihres Plugins die Datei db/migrate/update_journal.rb mit den folgenden :

class UpdateJournal < ActiveRecord::Migration
    def self.up
        change_table :journal do |t|
            t.column :my_bool, :boolean
        end
    end

    def self.down
        change_table :journal do |t|
            t.remove :my_bool
        end
    end
end

Dann können Sie die Aufgabe ausführen rake db:migrate_plugins RAILS_ENV=production So aktualisieren Sie Ihre Datenbank mit dem neuen Feld.

Nach der Ausführung der Migration hat Ihre Journal -Datenbank die my_bool Feld, das Sie wie jedes andere Bereich anrufen können.

Andere Tipps

Ich konnte das vorhandene Benutzermodell mit dem folgenden Code erweitern:

class UpdateUsers < ActiveRecord::Migration
  def up
    add_column :users, :your_new_column, :string, :default => ''
    add_column :users, :your_other_new_column, :string, :default => ''
  end

  def down
    remove_column :users, :your_new_column
    remove_column :users, :your_other_new_column
  end
end

Außerdem musste ich die Migrationsdatei so nennen, wie sie mit einer Nummer zB begann. myplugin/db/migrate/001_update_user.rb

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top