2011-11-03 5 views
0

사용자가보고자하는 제품을 선택하는 애플리케이션이 있습니다.REST Rails로 매개 변수를 전달하는 방법

  1. 제품보기 지수와 하나 개
  2. 제품은 보여 동작을 선택 호출되고 show.html.erb를 볼 수 있습니다. url =>/products/3

이제 사용자가 제품의 색인을 클릭하면 모든 제품이 다시 표시됩니다. 그러나 나는 그들이보고 있던 제품으로 쉽게 돌아갈 수 있기를 바랍니다.

제품 색인에 대한 URL :이 인덱스 페이지가 표시되지 않기 때문에/제품 나는 제품 ID를 추가 할 수 없습니다 :/제품 3 이 ID로 제품의 쇼 페이지로 이동합니다/3

같은 추악한 일을하지 않고 URL에 깔끔하게이 정보를 유지하는 좋은 방법이 있나요 :

/제품 PRODUCT_ID =

+0

설명에서 원하는 것을 이해하는 것은 매우 어렵습니다. 서버에서 사용자 상호 작용 내역을 저장하고 이에 따라보기를 생성 할 수 있습니다. 왜 어떤 식 으로든 리소스의 URL을 변경해야합니까? – Zepplock

답변

1

3 어떻게 세션 데이터를 저장에 대해?

class ProductsController 
    def index 
    @products = Product.all 
    end 

    def show 
    @product = Product.find(params[:id]) 
    session[:last_viewed_product] = @product.id 
    end 
end 

# Somewhere in your product layout 

<% if session[:last_viewed_product] %> 
    <%= link_to "View last product", product_path(session[:last_viewed_product]) %> 
<% end %> 
+0

다른 이유로 인해 세션을 사용하지 않으려합니다. 그것은 좋은 생각이다. – chell

관련 문제