교육 워크 북의 각 페이지 / 슬라이드가있는 교육 응용 프로그램을 "page1.blade.php", "page2.blade.php"등의 별도 블레이드 템플릿 파일로 작성했습니다. 이러한 각 파일에는 다음과 같은 종류의 콘텐츠가 있습니다.
@extends('en/frontend/layouts/training_modulename')
{{-- Page title --}}
@section('title')
Page Title
@parent
@stop
{{-- Page content --}}
@section('pageContent')
<div class="pageContentContainer">
<h2>Page Title</h2>
...
</div>
@stop
이것은 브라우저 내에서 페이지별로 볼 때 정말 잘 작동합니다. 그러나 모든 페이지를 자동으로 PDF 문서로 컴파일하고 싶습니다. 이것은 각 페이지 html을 수동으로 전달할 때 놀랍도록 잘 작동하는 dompdf를 통해 수행됩니다. 그러나 @section('pageContent')
각 페이지 의 섹션을 dompdf로 전달하기 위해 다른 레이아웃을 확장하는 하나의 큰 섹션으로 압축하고 싶습니다.
위의 컨텍스트를 감안할 때 내 질문은 다음과 같습니다. Laravel의 블레이드 파서에 블레이드 파일을 전달하고 특정 섹션에서 렌더링 된 html을 가져올 수있는 메서드가 있습니까? 아래 의사 코드는 내가 할 수있는 일을 보여줍니다.
$pages = array(...); // content of the directory
foreach ($pages as $page)
{
$renderedPage = Blade::render($page);
$title = $renderedPage->title;
$pageContent = $renderedPage->pageContent;
}
정상적인 시야 복귀 대신
return View::make('page');
대신 문자열에 뷰를 저장할 수 있습니다.
$view = View::make('page');
따라서 다음과 같이 코드를 수행 할 수 있습니다 (테스트되지는 않았지만 아이디어를 얻음).
$pages = array(...); // content of the directory
foreach ($pages as $page)
{
$renderedPage[] = view::make($page);
}
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다