2010-05-11 4 views
0

저는 레일을 처음 사용하기 때문에 질문과 대답 목록 만 표시하는 도움말 페이지를 만들려고합니다. 현재 나는 다음과 같은 매우 단순한 것을 가지고 있습니다 :Ruby on Rails를 사용하여 FAQ 페이지의 드롭 다운 및 기타 요소 만들기에 대한 도움말

<% @helps.each do |help| %> 
<%=h help.category %> 
<%=h help.question %> 
<%=h help.answer %> 
<% end %> 

각 질문과 대답은 그들이 속한 범주와 함께 있습니다. 사용자가 단 하나의 카테고리에만 속한 질문 만 나열 할 수있게하는 드롭 다운을 어떻게 만듭니 까?

두 번째로 페이지 상단 부근의 모든 질문 목록을 작성하고 싶습니다. 질문은 실제로 링크를 클릭하면 질문/답변이있는 페이지의 맨 아래로 이동하게됩니다. 또는 링크를 클릭하면 펼쳐지는 답변이 펼쳐지 며 facebook 도움말 페이지와 유사합니다. 나는 이것이 ajax 또는 java를 포함 할 것이라고 생각한다. 누군가가 올바른 방향으로 나를 가르키면 좋을 것입니다.

답변

1

당신은 다양한 섹션의 가시성을 전환 JQuery와 같은 것을 사용할 수 있습니다 - 사업부의 각 범주를 넣어 만든다 다음 jQuery로를 숨 깁니다. 또한 효과를 내기 위해 http://flowplayer.org/tools/demos/tabs/accordion.html과 같은 일부 jquery 플러그인을 사용할 수도 있습니다.이 경우에는 아코디언이지만 다른 많은 효과도 있습니다.

내 첫 번째 Google 검색 결과 : http://jquerystyle.com/2009/04/21/jquery-faq-plugin

0

사용자가 드롭 다운에서 카테고리를 선택하고 "필터"를 클릭하면 브라우저는 레일즈 애플리케이션에 해당 카테고리의 질문 만 요청합니다. 당신을 얻을 것이다 다음은 시작 :

# in config/routes.rb 
map.resources :helps 

# in app/models/help.rb 
class Help 
    named_scope :in_category, lambda { |category| { :conditions => { :category => category } } } 
    def self.categories 
    find(:all, :select => 'distinct category', :order => 'category').sort 
    end 
end 

# in app/controllers/helps_controller.rb 
class HelpsController < ApplicationController::Base 
    def index 
    @helps = if params[:category] 
     Help.in_category(params[:category]) 
    else 
     Help.all 
    end 
    end 
end 

# in app/views/helps/index.html.erb: 
<% form_tag(helps_path) do %> 
    <%= select_tag(:category, options_for_select(Help.categories, params[:category])) -%> 
    <%= submit_tag('Filter') -%> 
<% end %> 
<% @helps.each do |help| %> 
    <div class="help <%= help.category -%>"> 
    <%=h help.category %> 
    <%=h help.question %> 
    <%=h help.answer %> 
    </div> 
<% end %> 
관련 문제