частичные или вспомогательные рельсы - PullRequest
1 голос
/ 29 марта 2011

Я программирую большое приложение, используя Rails 3, и я продолжаю создавать поисковые формы, например, так:

= form_tag search_companies_path, :method => "get" do
    = label_tag :search
    = text_field_tag :search
    = submit_tag "Search"

Должно ли это быть вставлено в метод Helper или Partial?

Я пыталсячтобы заставить его работать через помощника:

module ApplicationHelper
  def search_form(path)
    form_tag path, :method => "get" do
      label_tag :search
      text_field_tag :search
      submit_tag "Search"
    end
  end
end

Это создает форму с кнопкой, я на правильном пути здесь?

Ответы [ 2 ]

5 голосов
/ 29 марта 2011

Помещать его в помощника - по моему скромному мнению - не очень хорошая практика, поскольку предполагается, что помощники должны выводить код из представлений, а не извлекать выдержки из представлений - как в случае с частичными частями.

Iопределенно будет использовать партиалы для этой функции!

Если вы хотите разделить партиал между различными частями вашего приложения, вы можете сохранить их в папке с именем «shared» (или как вам угодно) и вставить их ввид по телефону render :partial => '/shared/name_of_the_partial'.

0 голосов
/ 29 марта 2011

Я думаю, что частичное является более маневренным способом выполнения этой задачи, потому что легче обновлять код, а также потому, что вы должны экономить память, потому что помощник приложения включен во все помощники.

Вы можете создать эточастичное в общее , с именем _search.html.erb .

...