2012-07-18 7 views
0

저는 일반적으로 웹 개발에 익숙하지 않고 특정 레일에 루비를 처음 사용합니다. 저는 같은 방법으로 'Get'과 'Post'요청을 사용하는 웹 인터페이스를 개발하고 있습니다. get 메소드를 사용하고 사용자 이름과 비밀번호와 같은 매개 변수를 보낼 때 URL에 표시됩니다. 그러므로 아래에 내가 한 일이 있습니다.레일에서 루비를 사용하여 동일한 방법으로 게시 할 수 있습니까?

내 routes.rb에서

<%= form_for :modify, :method => "post", :url => {:action => "method2"} do |f|%> 
#code here to input username and password 
<%=end%> 

form1.html.erb 나는 방법 2에 다음 경로를 썼다 :

post 'controller/method2' 
get 'controller/method2' 

내가 username and password를 입력하고 제출을 클릭, 그것은을 찾는 post 'method2'을 입력하고 컨트롤러에서 코드를 실행하고 동일한 방법으로 get request이 표시되면 method2.html.erb을 표시하고 method2에 대한보기도 있습니다.

그러나 이것이 올바른 방법이 아닌 것 같습니다. 암호를 볼 수 없길 원합니다. 나는 두 가지 옵션이 있다는 것을 알게되었고, 세션에 암호를 저장하거나 게시 요청을 보냈습니다. 나는 안전하지 않기 때문에 세션에 저장하고 싶지 않습니다. 게시물 메서드를 작성할 때 사용자가 돌아 오려고하면 페이지가 만료됩니다. 이러한 일이 일어나지 않도록하려면 컨트롤러에서 게시물과 동일한 작업을 사용하고 URL에 매개 변수가 표시되지 않습니다.

이 당신이 사용자 & 비밀번호를 조작하기위한 견고한 방법을 원하는 경우에

답변

0

이 있어야한다 이 경로의 파일 :

app/views/controller/method2.html.erb 

두 경로가 필요하지 않습니다.

+0

이미 method2.html.erb을 렌더링하고 있으며 모든 것이 잘 작동합니다. 하지만 나는 그것을하는 방식에 익숙하지 않고 citraL이 아래 답변에서 말한 것처럼 더 나은 방법이 있다고 생각한다. – user1455116

3

을 할 수있는 올바른 방법, 난 당신이 Ruby on Rails tutorial 통과 권장없는 경우 알려 주시기 바랍니다, 그것은 훌륭한 튜토리얼 그리고 그것은 당신을 배우게됩니다 안전한 사용자 이름/비밀번호 사용을 포함하여 Rails 프로그래밍의 기본 사항.

또는 Devise을 사용하면 매우 유용합니다.

render 'controller/method2' 

그리고 당신은이 있어야합니다 컨트롤러에서

난 정말 당신이 무엇을하는지 모르고 안전한 사용자/암호 시스템을 구현하려고하지 것이다 ...

+0

현재 제가 일하고있는 프로젝트는 내부 용이며 현재 보안 문제에 대해 걱정할 필요가 없다고 들었습니다. 그래서 나는 그것을 끝내려고 노력하고 있었다. 그러나 나는 가능한 한 빨리 당신이 말한 것을 이행하려고 노력할 것입니다. 고맙습니다. – user1455116

관련 문제