2012-08-29 2 views
0

커스텀 SimpleForm 입력을 만들고 있습니다. 자바 스크립트 모달 팝업을 사용하여 값을 선택합니다.레일즈가 Simpleform 커스텀 입력에 partial을 추가합니다.

모달 부분을 양식보기에 포함 시키면 기본적으로 작동하도록 할 수 있지만 사용자 지정 입력을 사용하여 부분을 서식 파일로 푸시하는 것이 이상적입니다.

그러나 작동하지 않습니다. 나는 이것을 시도하고 있지만, 부분적으로 정확하게 렌더링하지는 않는다.

class ProductCategoryImageSelectInput < SimpleForm::Inputs::CollectionSelectInput 
    def input 

    html = '' 
    html << '<a href="#myModal" role="button" data-toggle="modal">Launch demo modal</a>' 

    File.open("#{Rails.root}/app/views/product_categories/_browse_modal.html.erb", 'r') do |f| 
    html << f.read 
    end 

    end 
end 

의견이 있으십니까?

편집

나는 분명히 스크린 샷을 게시하는 사용자 너무 새로운 해요,하지만 여기 기능의 차이에 대한 링크입니다 : 내가 형태로 모달 코드를 포함 할 때, 내가 할

원하는 기능 인이 : 나는 사용자 입력에 모달 코드를 삽입하려고하면 working

,이 대신받을 : not working

답변

0

이상하게도 이미 대답했습니다. here. 이 기능이 유용합니까?

ERB.new(f.read).result(binding) 

추신 : HAML 대신 ERB로 업데이트되었습니다.

+0

죄송 같은 초보자 질문을 할 수 있지만 사용하지 않는 HAML을 - 무엇을 html.erb와 동일한 구문일까요? – Bryce

+0

초급 질문 같은 것이 없습니다. : P ERB로 답변을 업데이트했습니다. –

+0

도움을 주셔서 대단히 감사드립니다! 그건 그렇고, 나는 railscast comment 섹션에서 당신 (또는 적어도 같은 gravatar 이미지를 가진 누군가)이 정적 컨텐츠를위한 새로운 보석을 내 놓는다는 것을 알았다. 나는 그것을 시험해 보는 것에 흥분한다! – Bryce

6

또한 @builder라는 이름의 인스턴스 변수에 할당 된 SimpleForm::FormBuilder 예를 사용하여 사용자의 입력에서 부분적으로 렌더링 할 수 있습니다

class ProductCategoryImageSelectInput < SimpleForm::Inputs::CollectionSelectInput 
    def input 
    @builder.template.render(partial: 'product_categories/browse_modal', locals: { foo: 'bar'}) 
    end 
end 
관련 문제