Sinatra 서버의 일부로 구현 된 루틴에 @theModels라는 문자열 배열이 있습니다. 이 모델은 사용자가 선택할 수있는 옵션이며 백엔드 (새 모델이 추가되면 프런트 엔드 코드가 변경되지 않아야 함)에 의해 획득됩니다.haml에서 배열 배열을 얻으려면 어떻게해야합니까?
나는 HTML을 렌더링하기 위해 haml을 사용하고 있습니다.
각 요소가 체크 상자가되도록 @theModels 목록의 각 요소를 열거 할 수 있습니까? 그리고 사용자가 선택한 체크 박스를 어떻게 얻을 수 있습니까?
난 그냥
= @theModels
퍼팅하지 체크 박스에 확실히 나에게 @theModels에 포함 된 문자열의 목록을 제공하지만, 간격 등을하지 않고, 할 것이다 것을 알 수있다. 나는 비슷한 것으로 보이는 this question을 찾았지만, 내 haml-fu는 내가 필요로하는 것을 변환하기에 충분하지 않다.
UPDATE :이 파일 업로드와 관련된 옵션입니다
등 이제 코드는 보이는 것을 같은 :에서 대신, 각 옵션에 파일 업로드 버튼을두고
%form{:action=>"/Upload",:method=>"post",:enctype=>"multipart/form-data"}
- @theModelHash.each do |key,value|
%br
%input{:type=>"checkbox", :name=>"#{key}", :value=>1, :checked=>value}
=key
%input{:type=>"file",:name=>"file"}
%input{:type=>"submit",:value=>"Upload"}
문제는, 끝. 나는 끝에있는 하나의 제출 버튼 만 원한다. 'Upload (업로드)'버튼을 누르면 두 결과 모두를보고하는 두 가지 양식이 있어야합니까?
UPDATE2 :
감사 : 순간의 생각 후
은 위의가에 수정 될 수 있습니다!
%form{:action=>"/Upload",:method=>"post",:enctype=>"multipart/form-data"}
- @theModelHash.each do |key,value|
%br
%input{:type=>"checkbox", :name=>"#{key}", :value=>1, :checked=>value}
=key
%form{:action=>"/Upload",:method=>"post",:enctype=>"multipart/form-data"}
%input{:type=>"file",:name=>"file"}
%input{:type=>"submit",:value=>"Upload"}
그리고 그것은 내가 원하는 것을 수행하는 것으로 보입니다.
우를 매우 가까이! 원래의 질문에서 문제가 될 것이라고 생각하지는 않지만 사용자가 동시에 업로드하는 파일에 대한 옵션입니다. 내 업데이트 된 질문을 참조하십시오, 나는이 계획의 나머지 부분에 충분한 공간이 없습니다. – mmr
이 두 번째 사양은 원본에 매우 가깝다고 생각하지 않습니다. 원래 답을 입력 한 후에 문제를 완전히 변경하면 좌절감을 느낍니다. 시도해보십시오. oDesk.com –
답변을 사용하여 제대로 작동 할 수 있었으므로 실제로는 매우 가까이에 있습니다. 도와 줘서 고마워, 미안해, 미안해. – mmr