특정 템플릿 (actions.tt)에서 사용할 매개 변수를 반환하는 게시 경로가 있습니다. 해당 템플릿 내에서 DirectoryView 플러그인을 사용하여 디렉토리의보기 (dirmain.tt)로 div (jQuery 사용)를로드하고 있습니다. 내 문제는 기본 템플릿 (action.tt)을 렌더링하기 전에 DirectoryView 템플릿에 매개 변수를 전달해야한다는 것입니다. param (dev)은 디렉토리 목록에 포함되어야합니다.Perl Dancer, Dancer :: Plugin :: DirectoryView, 템플릿 툴킷 및 템플릿의 공유 매개 변수
펄 부분 :
Use Dancer;
....
post "/" => sub {
template 'actions.tt', {
'dev' => param('dev'),
};
템플릿 :
....
how do I pass [% dev %] here before the action.tt is rendered by the browser?
....
이 어떤 종류의 후크를 사용하여겠습니까이 이행
actions.tt
....
<div id="dir">
<script type="text/javascript">
$('#dir').load('/files/[% dev %]');
</script>
</div>
....
dirmain.tt? 귀하의 도움을 많이 주시면 감사하겠습니다. 감사!
"렌더링 됨"? 브라우저로? 또는'actions.tt'가 펄에 의해 컴파일되기 전에 (이것은별로 의미가 없을 것입니다)? 어쨌든 댄서는 모르지만 템플릿의'session-> uri()'에 접근하기를 원할 것입니다. (어떤 식 으로든 액세스 할 수 있도록 설정하십시오.) 어떤 이유로 작동하지 않는다면, 'load ('/ files/[% dev %]? x = [% dev %]')'를 요청하고'param "x"'를 사용할 때'dev '를 매개 변수로 사용합니다. 그냥 무작위적인 생각. – Qtax
@Qtax 혼란스러운 부분을 편집했습니다. 팁을 주셔서 감사 드리며, DirectoryView 모듈에서 필자가 정의한 것을 정의하게되었습니다. 감사! – vpaterno