Как мне написать @if в Laravel, который использует данные из моей базы данных? - PullRequest
0 голосов
/ 01 марта 2020

Я новичок в Laravel и использую Laravel 6. Одно из моих представлений будет содержать значения в строке моей таблицы MySQL. Столбец таблицы является логическим, поэтому он содержит 0 или 1. Вместо отображения 0 или 1 в представлении я хочу отобразить ДА или НЕТ. @if кажется логичным способом сделать это, но я не могу заставить свой @if работать.

@if ({{ $sleepDiaryEntry->outdoorLight }} == 1 )
    <p>Two hours of outdoor light? YES</p>
@else
   <p>Two hours of outdoor light? NO</p>
@endif

Я пробовал несколько вариантов @if, но каждый вариант дает мне синтаксическую ошибку в первой строке @if.

Еще раз, руководство Laravel здесь очень мало поможет. Как я уже неоднократно видел, очень скудно рассказывается о том, какие аргументы могут и не могут появляться в @if. Они склонны приводить один или два примера и думают, что предвидели каждую возможную ситуацию и вопрос.

Может ли кто-нибудь с большим опытом работы Laravel, чем я, любезно объяснить, как я могу выполнить sh того, что я хочу сделать, с @if?

или без него

Ответы [ 3 ]

2 голосов
/ 01 марта 2020

Я не уверен, что вы хотите, но с помощью {{}} вы пытаетесь напечатать данные.

Попробуйте:

@if ($sleepDiaryEntry->outdoorLight == 1 )
    <p>Two hours of outdoor light? YES</p>
@else
   <p>Two hours of outdoor light? NO</p>
@endif

Если это не работает:

  • Вы даете $sleepDiaryEntry представлению в вашем методе контроллера?
  • Попробуйте {{ dd($sleepDiaryEntry) }} увидеть то, что у вас есть в представлении.
2 голосов
/ 01 марта 2020

удалить {{}} в @if, как показано ниже

@if ($sleepDiaryEntry->outdoorLight == 1 )
    <p>Two hours of outdoor light? YES</p>
@else
   <p>Two hours of outdoor light? NO</p>
@endif

, поскольку {{}} для отображения переменной

0 голосов
/ 02 марта 2020

@if ({{ $sleepDiaryEntry->outdoorLight }} == 1 ) просто визуализируется до:

<?php if ({{ $sleepDiaryEntry->outdoorLight }} == 1 ) { ?>

в конечном шаблоне Blade, что приведет к синтаксической ошибке. Вам не нужны теги {{ }} в условных выражениях (не просто «не нужны»: они здесь вообще не будут анализироваться); требуется старый PHP код в ().

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