더 안전하고 의미있는 URL을 사용하여 사용자 및 프로필을 편집하기위한 URL을 숨기고 싶습니다. 예를 들어, /user/13/edit
은 /settings/account
이고 /user/13/profile/edit
은 /settings/profile
이되어야합니다.레일 : 원하지 않는 URL 이용으로 404를 생성하거나 리디렉션하는 방법?
나는 그걸 달성 할 수 있었지만, 그 때문에 나는 세션에서 current_user
비트의 사용자 정보를로드해야했다. 그래서 같이 : 나는 세션에서 current_user
으로 params
에서 @user.id
을 비교할 수 없기 때문에 지금
# users_controller
def edit
@user = current_user
end
# profiles_controller
def edit
@user = current_user
@profile = @user.profile
end
하지만, 어떻게 악용되는 기존의 URL을 (/user/13/edit
및 /user/13/profile/edit
)를 중지 할 수 있습니까? 그들은 항상 현재 사용자의 양식을로드하므로 해를 끼치 지 않지만 404 오류 또는 그 이상을 생성 한 경우 더 편할 것입니다.
미리 감사드립니다.
내 문제는 정확하게 새 URL이 비교를 위해 사용할 수있는 매개 변수를 제공하지 않는다는 것입니다. –
몇 가지 사항을 수정했는데 찾고있는 것과 더 가깝습니까? –
솔루션을 제 코드에 적용하려고 시도했지만 작동하지 못했습니다. 이제 플러그인을 살펴 보겠습니다. 도와 줘서 고맙다. –