Показывать текст только тогда, когда форма заполнена веткой - PullRequest
0 голосов
/ 23 октября 2018

Итак, я пытаюсь получить bmi пользователей, что я делаю в этом контроллере следующим образом:

$form = $this->createForm(CaloriesType::class);

    $bmi = 0;

    $form->handleRequest($request);
    $data = $form->getData();
    if ($form->isSubmitted() && $form->isValid()){
        $bmi = ($data['mass'] /  ($data['height'] * $data['height'])) * 10000;

        switch ($bmi){
            case $bmi < 18.4:
                $bmi = "Underweight";
                break;
            case $bmi > 18.5 && $bmi < 24.9;
                $bmi = "Normal";
                break;
            case $bmi > 25 && $bmi < 29.9;
                $bmi = "Overweight";
                break;
            default:
                $bmi = "Obese";
                break;
        }
    }

, тогда в моем html я пытаюсь найти способ показывать текст только когдаПользователь ввел и отправил что-то, так как я не хочу, чтобы все время был случайный текст.

Вот то, что я пытался.

{{ form_start(our_form) }}
{{ form_widget(our_form) }}
<div class="from-group row">
    <div class="col-sm-2"></div>
    <div class="col-sm-12">
        <input type="submit" name="Send" class="btn btn-success">
    </div>
</div>
{% if bmi == 0 %}

{% else %}
According to BMI you are:  {{ bmi }}
{% endif %}
{{ form_end(our_form) }}

Это, похоже, не работает.

Ответы [ 2 ]

0 голосов
/ 23 октября 2018

{% if bmi == 0 %}, кажется, не работает, вы пробовали

{% if bmi != 0 %} According to BMI you are: {{ bmi }} {% endif %}

или

{% if bmi > 0 %} According to BMI you are: {{ bmi }} {% endif %}?

Когда яу меня проблемы с условными предложениями, я использую {{ dump(bmi) }}, чтобы проверить, что дано ветке.

0 голосов
/ 23 октября 2018

Вероятно, потому что поведение по умолчанию form_end состоит в том, чтобы визуализировать неотрисованный поле.Если вы хотите отключить это, вы можете сделать следующее:

{# don't render unrendered fields #}
{{ form_end(our_form, {'render_rest': false}) }}

Надеюсь, что эта помощь

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