2009-12-10 3 views
1

실제로 고려 DB단지에 입력 양식의 내용을 표시하는 방법 : 루비 온 레일즈에 옵션 "=> 확인을"

에 저장하기 전에 입력 한 정보를 확인하는 방법이 노력하고 있어요 내 양식이 더 번거 로움을 구현하기로한다 클립을 사용하여 첨부 파일을 포함하지만 여기

Ruby on Rails: Confirmation Page for ActiveRecord Object Creation

을 논의 개인 확인 페이지를 만드는.

은 그냥있는의 생각 : 확인 => 사용자 방금 ​​입력했다는 정보를 표시 것이라고 팝업.

문제는 레일에 대한

<% form_for @entry, :html => { :multipart => true } do |f| %> 
    <%= f.error_messages %> 


    <%= f.label :name %><br /> 
    <%= f.text_field :name %> 

    <%= f.label :file %><br /> 
    <%= f.file_field :file %> 

    <%= f.submit 'Create', :confirm => "????? " %> 

<% end %> 

답변

1

을 감안할 때 (참고, 그 테스트,하지만 가까이 보이는하지 않았다. 확인하는 것은 핵심 JS 기능, 어떤 LIB의 일부입니다) 사용자가 확인할 수 있도록 첨부 파일에서 파생 된 정보를 포함하는 준비보기를 렌더링합니다. 이미지가있는 경우 파일을 표시하거나 텍스트 파일 인 경우 텍스트의 첫 번째 단락과 마찬가지입니다.

확인 팝업을 추가하는 것보다 많은 작업이 필요할 것입니다. 여분의 노력의 가치가있다.

저는 클립의 작동 방식에 익숙하지 않습니다. 따라서 친밀한 세부 사항을 알기 위해서는 대부분 혼자입니다.

업로드 된 파일의 샘플을 사용하여 준비보기를 렌더링하려면 먼저 레코드를 만들어야합니다. 이를 위해 모델의 "활성"열을 설정하면 false가 기본값으로 설정됩니다. 새로운 형태의 complets

  1. 사용자 :

    사용법은 다음과 같이 보일 것입니다.

  2. 첨부 파일이 업데이트되고 레코드가 저장되며 active 필드는 false로 설정됩니다.
  3. 본질적으로 확인 링크/버튼과 취소 링크/버튼이있는 확인 페이지로 리디렉션됩니다.
  4. a. 확인 링크/버튼을 클릭하면이 레코드 설정의 업데이트 동작을 트리거하는 컨트롤러에 요청을 보냅니다.

    b.취소 링크/버튼을 클릭하면 컨트롤러에이 레코드의 파괴 동작을 트리거하라는 요청을 보냅니다. 모든 것은이 남아

는 비활성 충분히 전에 그냥 브라우저 세션을 종료 사용자를 가정하는 것이 안전하다는 긴 상자에 포장 된 개체를 제거하는 반복 작업을 설정하는 것입니다.

1

확인 옵션이 방법은 텍스트 값을 취할 수 제출 예를 들어, 사용자가 방금 입력했다는 정보를 표시하는 방법입니다.

동적으로 확인 된 텍스트를 생성하려면

, 당신이 할 수있는 하나의 방법은 자신의 HTML 태그를 제출 쓰기, 당신이 당신의 생성 된 텍스트에 사용할 필드를 분석 할 사용자 지정 자바 스크립트를 작성하는 것입니다.

아니면 레일이 방법을 제출하지만,하기위한 이벤트 핸들러를 추가하는 JQuery와 같은 것을 사용 사용할 수 있습니다.

1

난 그냥 내 js into an onclick handler을 던질 것입니다. 레일즈가 그랬다.

<%= f.submit 'Create', :onclick => "confirm('Name is ' + $F('entry_name'));" %> 

당신의로드 첨부 파일이 나쁜 생각하지 않을 수

관련 문제