2011-01-27 3 views
1

Pylons가있는 텍스트 영역에 표시되도록 원시 Mako 템플릿을 포함하려고합니다. 내가 같은 일을 할 수있는 방법이 있나요Raw Mako 템플릿이 Pylons의 다른 템플릿에 포함되어 있습니다.

<html> 
<body> 
Here is some HTML. Now, I want to include a template. 
<%include file="${c.a_mako_template}" /> 
</body> 
</html> 

을하지만, 템플릿이 전달보다는 원시 마크 업으로 표시가 있습니다 철탑에서

, 나는이 같은 다른 하나 마코 템플릿을 포함 할 수 있습니다 알고 Mako 렌더러를 통해? 그런 일이 불가능하면, 나중 단계에서 포함을 않는 철탑 컨트롤러를 작성하는 최선의 경로가

<%include file="${c.a_mako_template}" render="false" /> 

: 내가 좋아하는 뭔가를 상상 해요?

어쨌든 < % def>를 (를) 사용하여 즉시 < % 텍스트> 태그에 포함될 파일을 줄 바꿈 할 수 있습니까?

답변

1

나는 일종의 실행 가능한 해결책을 찾아 냈습니다. 여전히 하나의 거친 비트가 있지만 작동합니다.

<% 
    path = '/path/to/file/' 
    f = open(path + c.sourcefile, 'r') 
    text_to_edit = f.read() 
    f.close() 
%> 
     <textarea id="code"> 
     ${text_to_edit} 
     </textarea> 

첫 번째 부분은 템플릿에 포함 된 Python 덩어리입니다. 파일을 열고 텍스트를 추출하여 Mako를 우회합니다.

대략적인 비트는 하드 코드 된 경로입니다. 그걸 c.path 같은 것으로 전달해야합니다.

관련 문제