2012-01-24 6 views
0

foo 리소스가 있고 사용자 요청에 따라 foo에 대한 정보를 다르게 표시하고 싶다면 어떻게 FooController # show를 표시하여 더 복잡한 표시 동작을 나타낼 수 있습니까? 컨트롤러 작업을 작성하기 위해이 작업을 수행하는 가장 좋은 방법은 무엇입니까?더 많은 컨트롤러 동작을 통해 리소스 당 더 많은 쇼보기

예를 들어 foo.name 또는 foo.email 만 표시하는 페이지로 응답하는 요청을 다른 요청과 함께 보내려합니다.

답변

1

표시하려는 Foo 리소스의 측면을 결정하는 매개 변수 (params [: facet] 또는 무언가) 만 보낼 수 있습니다.

그러면 뷰에서이 매개 변수의 값으로 분기하여 Foo의 각면에 대해 표시 할 내용 만 표시 할 수 있습니다.

+1

이상인 경우 컨트롤러에서 분기하고 다른 템플릿을 렌더링하도록 선택할 수 있습니다. –

+0

감사합니다. 덕분에 도움이되었습니다. 나는 form_for와 같은 것을 위해 api를 읽는데 어려움을 겪고 있었다. 하지만 이제는 생각했던 것보다 단순 해 보입니다. 경로에서 해당 동작을 정의한 경우 액션에 임의의 매개 변수를 보낼 수 있습니다. form_for "some_param_name", someaction_foo_path (@foo) – eeeeeean