simple_form을 사용한 입력 기본값
입력에 대한 기본값을 시도하는 메신저
잘 작동합니다.
<%= f.input_field :quantity, default: '1' %>
하지만 f.input이 필요하지 않습니다 .f.input_field
<%= f.input :quantity %>
표준 html 값으로 시도했지만 실패한 유효성 검사 수량이 1로 무시 된 후-바람직하지 않습니다.
<%= f.input :quantity, input_html: {value: '1'} %>
값을 제거하고 유효성 검사가 실패하면 전체 수량이 채워집니다. 모든 것이 정상입니다.
<%= f.input :quantity %>
이것을 해결하는 방법? f.input_field-: default와 같은 대안이 있습니까? 또는 가치있는 다른 해결책이 있습니까?
다음과 같이 시도해 볼 수 있습니다.
<%= f.input :quantity, input_html: {value: f.object.quantity || '1'} %>
selected
simple_form 옵션을 사용할 수 있습니다 . <%= f.input :quantity, selected: f.object.quantity || '1' %>
이 시도:
= f.input : quantity, input_html: { value: (f.object.quantity.present?) ? f.object.quantity : '1' }
넌 할 수있어
<%= f.input :quantity, value: f.object.quantity || '1' %>
요즘에는 input_html
열쇠 를 빼고 .
이것은 오래된 질문입니다 ...하지만 제공된 답변 중 어느 것도 나에게 받아 들여지지 않는 것 같습니다. 이를 수행하는 가장 좋은 방법은 컨트롤러의 새 작업에 값을 설정하는 것입니다.
def new
WizBang.new(quantity: 1)
이렇게하면 새 작업에서 개체 수량 키가 값 1에 할당됩니다. 편집 작업은 객체의 지속 된 값 또는 유효성 검사가 실패하고 양식이 다시로드 된 경우 params 값에 의존해야합니다. 다른 답변은 사용자가 처음에 nil을 저장 했더라도 (nil을 허용하는 경우) 편집시 수량을 1로 강제합니다. 괜찮지 않습니다. nil은 허용하지 않지만 수량 필드에 0 옵션을 포함합니다.
f.input :quantity, collection (0..100)
훨씬 깨끗합니다.
참조 URL : https://stackoverflow.com/questions/19029129/default-value-for-input-with-simple-form
'development' 카테고리의 다른 글
Crashlytics 파일을 찾을 수 없습니다. (0) | 2020.12.28 |
---|---|
Facebook 공유를위한 새로운 og : image 크기? (0) | 2020.12.28 |
Corpus 인수의 DocumentTermMatrix 오류 (0) | 2020.12.28 |
MELPA에 패키지가 나열되어 있지만 패키지 설치에는 없음 (0) | 2020.12.28 |
두 개의 Eloquent 컬렉션을 병합하는 방법은 무엇입니까? (0) | 2020.12.28 |