Laravel无法在部分之间传递tabindex变量

时间:2013-07-30 10:39:58

标签: include laravel laravel-3 partials

使用Laravel我的枚举标签索引遇到了一些小问题。

我有一个简单的控制器

public function get_login()
{
    return View::make('auth.login')->with('i', 1);
}

然后在我看来,我正在加载两个部分。

@layout('layout.master')
@section('content')
    <article>
        @include('layout.partials.login-form')
    </article>
    <aside>
        @include('layout.partials.sidebar-guest')
    </aside>
@endsection

部分都有表格,正在收集$ i变量并像这样使用它

{{ Form::text('username', Input::old('username'), array('tabindex' => $i++)) }}

问题是,虽然$ i变量在partial内完全增加,但在@include完成并且下一个@include被加载后,它没有看到$ i变量已经增加。

这有什么简单的方法吗?

1 个答案:

答案 0 :(得分:0)

您好,您有两种选择:

1)从控制器发送$ i变量:

public function get_login()
{
    $i=1;
    return view('auth.login')->with('i');
}

然后在视图中使用$ i变量

{{ Form::text('username', Input::old('username'), array('tabindex' => $i++)) }}

2)在视图中定义$ i变量并使用它:

控制器:

public function get_login()
{
    return view('auth.login');
}

查看:

@layout('layout.master')
@section('content')
@php
    $i = 1;
@endphp
    <article>
        @include('layout.partials.login-form')
    </article>
    <aside>
        @include('layout.partials.sidebar-guest')
    </aside>
@endsection

然后在视图的每个部分中使用它:

{{ Form::text('username', Input::old('username'), array('tabindex' => $i++)) }}

祝你好运。