2010-09-26 14 views
37

Ich habe vor einem Jahr Programmierung auf ASP.NET MVC Framework gestartet. Kürzlich. Ich habe das Lernen Ruby On Rails-Framework Es wird "custom html Helfer" Feature in ASP.NET MVC So kann ich meine eigenen HTML-Helfer erstellenErstellen Sie benutzerdefinierte HTML-Helfer in Ruby auf Schienen

<%= Html.MyOwnHtmlHelper() %> 

Ich habe gelernt, dass es HTML-Helfer in Ruby so

als
<% text_area %> 

die

bei html machen habe ich eine Frage. Kann ich meinen eigenen HTML-Helfer zum Rendern meines eigenen HTML erstellen?

Antwort

54

Um einen neuen Helfer zu erstellen:

  1. einen Namen für die Helfer-Datei auswählen, zum Beispiel tags_helper.rb
  2. die Datei im Verzeichnis/app/Helfer Verzeichnis nach
  3. erstellen ein Modul erstellen zum Dateinamen. In diesem Fall

    module TagsHelper 
    end 
    
  4. definieren Sie Ihre Helfer als Methode

    module TagsHelper 
        def hello_world(name) 
        "hello #{name}" 
        end 
    end 
    

Jetzt können Sie die hello_world Hilfsmethode in Ihrer Ansicht verwenden.

+1

Muss ein HTML-Helfer ein Modul sein? Kann es eine Klasse sein? –

+0

Ich weiß, das ist alt aber: Um den eingebauten Rails-Mechanismus zu verwenden und automatisch verfügbar zu machen, muss es ein Modul im 'helper'-Ordner sein und möglicherweise richtig benannt sein. Sie könnten ein einfaches altes Ruby-Objekt (eine Klasse) verwenden - und dann müssen Sie es nur mit seinem vollständigen Namen und <% = HelloWorldHelper.new.hello_world_tag%> aufrufen, aber der Helper-Mechanismus ist einfacher und ist eine Konvention, und Sie würden einfach '<% = hallo_world_tag%>' aufrufen – Gal

Verwandte Themen