Symfony演示应用程序 - 在哪里可以找到树枝?

时间:2015-07-28 20:31:09

标签: symfony twig

我尝试通过#34; Symfony Demo应用程序"来尝试使用Symfony框架。我正试图通过互连工作。但是,在下面的代码段中,我无法找到定义此树枝参考的位置value="{{ last_username }}"

\应用\资源\视图\安全\ login.html.twig

{% extends 'base.html.twig' %}

{% block body_id 'login' %}

{% block main %}
    {% if error %}
        <div class="alert alert-danger">
            {{ error.messageKey|trans(error.messageData) }}
        </div>
    {% endif %}

    <div class="row">
        <div class="col-sm-5">
            <div class="well">
                <form action="{{ path('security_login_check') }}" method="post">
                    <fieldset>
                        <legend><i class="fa fa-lock"></i> Secure Sign in</legend>
                        <div class="form-group">
                            <label for="username">Username</label>
                            <input type="text" id="username" name="_username" value="{{ last_username }}" class="form-control"/>
                        </div>
                        <div class="form-group">
                            <label for="password">Password:</label>
                            <input type="password" id="password" name="_password" class="form-control" />
                        </div>
                        <input type="hidden" name="_csrf_token" value="{{ csrf_token('authenticate') }}"/>
                        <button type="submit" class="btn btn-primary">
                            <i class="fa fa-sign-in"></i> Sign in
                        </button>
                    </fieldset>
                </form>
            </div>
        </div>

我搜索了last_username的整个演示应用程序,它只出现在这四个文件中:

  • \应用\缓存\ dev的\ classes.php
  • \应用\缓存\ PROD \ classes.php
  • \厂商\ symfony的\ symfony的\ SRC \的Symfony \元器件\安全\核心\ SecurityContextInterface.php
  • \厂商\ symfony的\ symfony的\ SRC \的Symfony \元器件\安全\核心\ Security.php

......所有这些似乎都无法提供有助于定义last_username的任何内容。

1 个答案:

答案 0 :(得分:2)

last_username参数通过SecurityController传递给模板,src/AppBundle/Controller/SecurityController.phpShow code文件中定义。

Symfony Demo应用程序最酷的功能之一是所有页面都包含一个useCurrent,它会显示控制器和用于创建您正在查看的页面的模板。例如,对于登录页面:

Symfony Demo Application - Show Code