我使用yii2與樹枝模板引擎。它似乎工作,但我似乎無法使用任何的Html助手(yii/helpers/Html)的方法。
我的看法是擴展基礎佈局使用樹枝延伸。 {% extends "@layouts/_base.twig" %}
我在_base.twig文件中包含'yii/helpers/Html'。 {{ use('yii/helpers/Html') }}
我使用{{ html.encode(this.title) }}
呈現在標題的頁面標題和
{{ html.submitButton('Send Message', {
'class': 'button button--cta button--expand',
}) | raw }}
,試圖在我看來呈現一個按鈕,但既不似乎工作,我沒有得到任何錯誤,只是沒有渲染。
問題
我有正確的設置呢?我需要做什麼才能在yii2樹枝中呈現按鈕?使用樹枝非常新穎。
代碼
index.twig
{% extends "@layouts/_base.twig" %}
{% block layout %}
...
{% set form = active_form_begin({
'id' : 'contact-us-form'
}) %}
...
<div class="row">
<div class="medium-8 medium-offset-2 columns">
{{ form.field(contact_us, 'full_name').textArea([{
'rows' : 6,
'placeholder' : 'Let us know if you have any questions...'
}]).label('Message', {
'class' : 'label--inline'
}) | raw }}
</div>
</div>
<div class="row">
<div class="medium-3 medium-offset-2 columns">
{{ html.submitButton('Send Message', {
'class': 'button button--cta button--expand',
}) | raw }}
</div>
</div>
{{ active_form_end() }}
</section>
{% endblock %}
_base.twig
{{ use('yii/helpers/Html') }}
{{ use('yii/widgets/ActiveForm') }}
{{ use('yii/web/JqueryAsset') }}
{{ this.beginPage() }}
<!DOCTYPE html>
<html lang="{{app.language}}">
<head>
{{ this.head() }}
<meta charset="{{app.charset}}">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1" />
<link href='https://fonts.googleapis.com/css?family=Lato:300,400,700,900' rel='stylesheet' type='text/css'>
{{ html.csrfMetaTags() | raw }}
{{ register_asset_bundle('www/assets/AppAsset') }}
<title>{{ html.encode(this.title) }}</title>
</head>
<body>
{{ this.beginBody() }}
{% block header %}
{% include "@layouts/components/header.twig" %}
{% endblock %}
{% block layout %}
{% endblock %}
{% block footer %}
{% include "@layouts/components/footer.twig" %}
{% endblock %}
{{ this.endBody() }}
</body>
</html>
{{ this.endPage() }}
由於某種原因,這不再起作用。 @ hesselek的答案確實有效。 – clapas
@clapas謝謝,看起來像yii2-twig擴展v2.1.0語法已經改變。我更新了我的答案。 – cronfy