Laravel - Попытка установить содержимое файла PDF условно из файла blade.php - PullRequest
0 голосов
/ 26 октября 2018

На сайте Laravel / PHP, над которым я работаю, есть функция, позволяющая пользователю загрузить письмо с напоминанием о платеже в виде файла PDF - PDF создается на основе свойств, принадлежащих записи базы данных, которую он выбирает для загрузки. PDF для.

Файл reminder.blade.php, сгенерированный для загрузки, изначально выглядел так:

<html>
<head>
    ...
</head>
<body style="....">
    @foreach ($transaction as $transaction)
        ...
        <!-- Content of the PDF here -->
    @endforeach
</body>

Я хочу изменить отображение PDF на основе номера / типа transactionItems в $transaction, который экспортируется в PDF, - если в $transaction имеется только один transactionItem с $transactionItem.currentStatusId значение свойства 1010 (идентификатор конкретного значения поля $transactionItem.currentStatusId, должна быть сгенерирована только первая страница PDF, в противном случае должны быть созданы все страницы (как они есть)

Для этого я попытался окружить теги <body></body> символом @if, который проверяет число transactionItems в экспортируемом $transaction, и соответствующим образом установить содержимое PDF в каждом из оператор @if & @else, поэтому внесенные мною изменения в файл reminder.blade.php означают, что в настоящее время он выглядит следующим образом:

<html>
<head>
    ...
</head>
@if(($transaction->count($transaction['transactionItem']) == 1) && ($transaction['transactionItem']['currentStatusId'] == '1010'))
    <body style="....">
        @foreach ($transaction as $transaction)
            ...
            <!-- First page of PDF only -->
        @endforeach
    </body>
@else
    <body style="...">
        @foreach ($transaction as $transaction)
            ...
            <!-- Original PDF here -->
        @endforeach
    </body>
@endif
</html>

Однако, когда я сейчас экспортирую файл PDF, хотя файл успешно загружается, при попытке открыть его появляется сообщение об ошибке:

Не удалось загрузить документ PDF.

У кого-нибудь есть идеи, почему я могу получить это? Я предполагаю, что что-то не так с оператором @if, который я использую для динамического генерирования контента, но я не вижу, что ... Кто-нибудь может указать мне правильное направление? Как я могу изменить содержимое PDF, созданного на основе значения поля в базе данных, которое используется для создания PDF?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...