답변

281

= f.input :title, :as => :hidden, :input_html => { :value => "some value" } 
+8

감사합니다. – Oleander

+5

이것은 숨겨진 입력을 수행하는'simple_form '방법입니다. 그러나 숨겨진 입력 만하는 경우에는'hidden_html = Simple Form은 모든 폼 빌더 메소드를 상속하므로 Rails의 숨겨진 필드 빌더를 사용하면됩니다. – scarver2

259

최단 그러나 시도!

=f.hidden_field :title, :value => "some value" 

더 짧고, 아마도 더 명백합니다. 루비 1.9 우리는 3 자 짧은 갈 수있는 새로운 해시 형식 물론

...

=f.hidden_field :title, value: "some value" 
+1

또는 <% = f.hidden_field : term_id, : value => @ transaction.term_id %> – mirap

+1

허용되는 대답이어야합니다. 비록 간단한 형태에 관해서 질문을 했음에도 불구하고 더 짧은 구문으로 똑같은 것을 완성 할 때 사용할 이유가 없습니다. – gregblass

5
= f.input_field :title, as: :hidden, value: "some value" 

는 옵션입니다. 그러나 양식 빌더에 대해 정의 된 모든 랩퍼는 건너 뜁니다.

6

올바른 방법은 (당신이 hidden_field 입력의 값을 다시 설정하려고하지 않는 경우)입니다 : :method는 방법입니다

f.hidden_field :method, :value => value_of_the_hidden_field_as_it_comes_through_in_your_form 

값에서 개체 결과에 전화했을 때 당신이 원하는 것을

그래서 위의 예를 다음

= simple_form_for @movie do |f| 
    = f.hidden :title, "some value" 
    = f.button :submit 

값 재설정 예에서 사용되는 코드 (제목 :)는 @movie의 형태로 전달된다. (: 제목)이 값에 액세스해야하는 경우 재설정이 아니라, 영화의를,이 작업을 수행 :

= simple_form_for @movie do |f| 
    = f.hidden :title, :value => params[:movie][:title] 
    = f.button :submit 

을 다시을 만는 사용자가 제출 한 값을 재설정하지 않아도되는 내 대답을 사용 .

나는 이것이 의미가 있기를 바랍니다.