2016-11-08 1 views
1

나는 render_to_string 레일 기능에 문제가있다. --api 플래그를 사용하여 응용 프로그램을 만들었으므로 '전체'레일 응용 프로그램에서 테스트 한 결과 문제가 될 수 있다고 생각합니다.Rails render_to_string

기본적으로 내가 부르고 :

body_html = render_to_string(template: 'reservations/print') 

나는 또한 템플릿의 HTML을 반환해야

body_html = render_to_string('reservations/print') 
body_html = render_to_string(partial: 'reservations/print') 
body_html = render_to_string(partial: 'reservations/print.html.erb') 

을 시도했습니다. 파일 이름은 print.html.erb이며 기본 데이터 만 있습니다. 즉,

<p> Hello world. </p> 

출력 할 때 body_html이 비어 있습니다.

나는이 질문을 What is the correct way to render_to_string in wicked pdf?과 같이 언급하고 있으며, Wicked PDF를 사용하여 pdf 파일을 생성하려고합니다.

많은 감사 나는이가이 일 다음 일을 최선의 해결책이라고 생각하지 않는 동안

+0

참조하는 루디, 스택 오버 플로우 질문입니다. 템플릿 키워드없이'reservations/print'를 그냥 지나치셨습니까? –

+0

'--api' 플래그가 문제라고 생각하지 않습니다. Rails API에 관한 문서에 따르면,'AbstractController :: Rendering'은 디폴트로이 모듈은'render_to_string' 메소드를 포함하고 있습니다. –

+0

안녕하세요 댄, 답변 시간을내어 주셔서 감사합니다. 나는 그 이상을 가지고있다. 나는 그 질문을 갱신 할 것이다. – Dudedolf

답변

2

.

ac = ActionController::Base.new() 

html_string = ac.render_to_string :template => 'path_to_file' e.g. 'post/show' 

레일 API 모드에서 응용 프로그램의 컨트롤러 파일 ActionController :: API에서 상속, 그래서 렌더링 할 수있는 기능이 ActionController :: 자료에있는 것 같아요. 누구든지 필요한 Base 모듈을 알고 있다면이 대답을 업데이트하겠습니까?

감사

관련 문제