나는 form_for을 뱉어 낼 draper decorator에서 메소드를 생성하려고합니다. 인덱스 뷰에서 레코드를 검색하는 데 사용하는 양식이 있고 수십 개의 리소스가 있으므로 가능하면이 논리를 한 곳에서 유지하려고합니다 (응용 프로그램 데코레이터). 제 문제는 제가 데코레이터에서 form_for를 렌더링하는 방법을 모른다는 것입니다. 나는 행운을 들이지 않고 이것을 시도하고 성취하기 위해 concat과 capture의 일부 사용법을 보았습니다. 내가 얻을 수 있었던 것은 내 div를 표시하는 것입니다 (HTML이 아닌 일반 텍스트처럼). 어떻게 할 수 있을지에 대한 아이디어가 있습니까? 이것은 코드를 내가 가지고있다 : Draper with form_for with method
def crud_index_search(search_obj)
h.concat "<div id='basic_search' style='display:none;'>"
search_form_for search_obj do |f|
h.concat '<div class="input-append">'
f.text_field :name_or_description_cont, :placeholder => 'Quick search ...', :id => 'search'
h.concat "<button class='btn'><i class='icon-search'></i></button>"
h.concat '</div>'
link_to 'Advanced Search', '#', :id => 'advanced_search_btn', :class => 'pull-right'
end
h.concat '</div>'
h.concat "<div id='advanced_search' style='display:none;'>"
search_form_for search_obj do |f|
f.condition_fields do |c|
h.concat render "crud/partials/condition_fields", :f => c
end
h.concat "<p>#{ link_to_add_fields 'Add Conditions', f, :condition }</p>"
f.submit 'Search'
h.concat "#{link_to 'Basic Search', '#', :id => 'basic_search_btn', :class => 'pull-right'}"
end
h.concat '</div>'
end
내보기에
... 은<%= @categories.crud_index_search @search %>
는 어떤 도움을 크게 감상 할 수있다!
FYI, 이미 이것을 부분적으로 넣었지만 작동합니다. 그러나 리소스에 따라 다르도록 추가해야 할 더 복잡한 논리가 있습니다. 따라서 부분적으로 이상적이지 않습니다. 나를 위해. 그게 거기에 무엇 때문에
감사