2010-09-26 17 views
37

Я начал программирование на ASP.NET MVC Framework год назад. Недавно. Я изучение Ruby On Rails Framework Там есть «пользовательский HTML хелпер» функция в ASP.NET MVC Так что я могу создать свой собственный HTML помощниксоздать пользовательские html-помощники в ruby ​​on rails

<%= Html.MyOwnHtmlHelper() %> 

Я узнал, что есть HTML помощники в Ruby, такой в

<% text_area %> 

, которые делают в HTML

у меня есть вопрос. Могу ли я создать свой собственный html-помощник для рендеринга собственного html?

ответ

54

Для создания нового помощника:

  1. выбрать имя для файла хелперов, например tags_helper.rb
  2. создать файл в каталоге/приложение/хелперов
  3. создать модуль в соответствии к имени файла. В этом случае

    module TagsHelper 
    end 
    
  4. определяют помощник как метод

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

Теперь вы можете использовать метод hello_world помощник в вашем представлении.

+1

Должен ли HTML-помощник быть модулем? Это может быть класс? –

+0

Я знаю, что это старый, но: использовать встроенный механизм рельсов и автоматически ли он быть доступен, он должен быть модулем в папке «helper» и, возможно, назван правильно. Вы можете использовать простой старый объект ruby ​​(класс) - и тогда вам просто нужно называть его своим полным именем и '<% = HelloWorldHelper.new.hello_world_tag%>', но механизм Helper проще и является конвенцией, и вы просто вызываете '<% = hello_world_tag%>' – Gal

Смежные вопросы