Rails 5 Controller gemeinsame Variablen

Gemeinsame Variablen in Rails 5-Controllern definieren

Ein Memo darüber, wie man gemeinsame Variablen in Rails 5-Controllern definiert. Für Konstanten können Sie die config-Methode verwenden oder direkt in ApplicationController schreiben, aber es scheint anders für Variablen zu sein.

Shou Arisaka
2 Min. Lesezeit
5. Nov. 2025

Ein Memo darüber, wie man gemeinsame Variablen in Rails 5-Controllern definiert.

Es gibt mehrere Möglichkeiten, gemeinsame Variablen über Controller oder die gesamte App in Rails-Anwendungen zu definieren. Hier ist eine Zusammenfassung dieser Methoden und zugehörige Informationen.

  1. Definition in ApplicationController:

    class ApplicationController < ActionController::Base
      HASH_DATA = { value: "key" }
    end

    Diese Methode definiert eine Konstante, die für alle Controller und Aktionen verfügbar ist. Die Konstante HASH_DATA wird in der gesamten Anwendung geteilt.

  2. Verwendung von before_action innerhalb eines Controllers:

    class SomeController < ApplicationController
      before_action :set_admin
    
      def set_admin
        @listOfWords = ['a', 'b', 'c']
      end
    end

    Diese Methode verwendet before_action, um eine gemeinsame Variable (in diesem Fall @listOfWords) innerhalb eines bestimmten Controllers zu definieren. Diese Variable ist von allen Aktionen im Controller aus zugänglich.

  3. Definition einer Methode in ApplicationController:

    class ApplicationController < ActionController::Base
      def common_variable
        @listOfWords = ['a', 'b', 'c']
      end
    end

    Diese Methode fügt ApplicationController eine Methode hinzu, und Sie können gemeinsame Variablen setzen, indem Sie diese Methode in Controllern aufrufen. Dies ist eine flexible Möglichkeit, Variablen zu definieren, und Sie können die common_variable-Methode bei Bedarf in Controllern aufrufen.

Die Wahl zwischen diesen Methoden kann flexibel entsprechend den Anforderungen Ihrer Anwendung getroffen werden. Variablen müssen als Instanzvariablen (@variable) definiert werden. Solche Variablen sind in Views zugänglich, was sie praktisch für die Übergabe von Daten von Controllern an Views macht.

Diesen Artikel teilen

Shou Arisaka 5. Nov. 2025

🔗 Links kopieren