如何在 laravel 5 中的 blade 模板中创建一个变量以供局部视图使用

How to create a variable in a blade template in laravel 5 to be used by a partial view

我创建了一个具有通用表单代码的局部视图。我想做的是改变按钮的值,所以我想我会在 parent 视图中创建一个变量,就在 @include 部分视图之前,我会设置一个变量,然后部分视图使用以显示正确的标题。

这是我的局部视图代码

  <div class="form-group">
    {!! Form::label('account_name_id', 'Account Name', ['class' => 'col-sm-2 control-label' ]) !!}
    <div class="col-sm-10">
      {!! Form::text('account_name', null, ['class' => 'form-control', 'id' => 'account_name_id', 'placeholder' => 'Account Name...']  ) !!}
    </div>
  </div>



  <div class="form-group">
    {!! Form::label('legal_name_id', 'Legal Name', ['class' => 'col-sm-2 control-label' ]) !!}
    <div class="col-sm-10">
      {!! Form::text('legal_name', null, ['class' => 'form-control', 'id' => 'legal_name_id', 'placeholder' => 'Legal Name...']) !!}
    </div>
  </div>



  <div class="form-group">
    {!! Form::label('company_code_id', 'Company ID', ['class' => 'col-sm-2 control-label' ]) !!}
    <div class="col-sm-10">
      {!! Form::text('company_code', null, ['class' => 'form-control', 'id' => 'company_code_id', 'placeholder' => 'Company Identifier...']  ) !!}
    </div>
  </div>



  <div class="form-group">
    <div class="col-sm-offset-2 col-sm-10">
      {!! Form::submit($submitButtonTitle, ['class' => 'btn btn-primary']) !!} 
    </div>
  </div>

请注意我上面的部分视图中的 $submitButtonTitle 变量。

然后在 parent 视图中我做了这样的事情

@extends('layouts.master')
@section('main')

    {!! Form::open(['route' => ['account_store_path'], 'class' => 'form-horizontal']) !!}

  {{ $submitButtonTitle = 'Add Account' }}
  @include ('accounts._form')

    {!! Form::close() !!}
@stop

我遇到的问题是我不确定如何设置变量而不在屏幕上显示它。

当我做

  {{ $submitButtonTitle = 'Add Account' }}

它实际上正确地设置了变量,但它也将它回显到屏幕上。如何只设置变量而不将其回显到屏幕?

使用简单的 php 标签

<?php $submitButtonTitle = 'Add Account' ?>

这是一个恰当的 blade 包含。您可以通过这种方式将部分添加到您的视图中:
@include('your_partial', ['submitButtonTitle' => 'Add Account'])