Laravel 5.5 - 从blade连续保存多个数据

Laravel 5.5 - Save multiple data continiously from blade

我想使用 laravel 创建一个 PHP 方法。我想做标准和标准的比较。这是控制器代码:

public function create()
{
 $kriteria1 = Model\Kriteria::pluck('nama_kriteria', 'id');
 $kriteria2 = Model\Kriteria::pluck('nama_kriteria', 'id');
 return view('kriteria_kriterias.create')->with('kriteria1', $kriteria1)->with('kriteria2', $kriteria2)->with('data', $data);
}

这是 blade 代码:

这将使表格显示为符合条件的总数#

问题是,我无法将其全部保存到数据库中。我如何才能做到这一点?

也许您忘记添加起始标签 ;)

{!! Form::open(array('url' => 'foo/bar')) !!}
    //put your code in here (line 1-34)
{!! Form::close() !!}

将控制器中的方法更新为以下内容:

public function create()
{

    $kriteria1 = Model\Kriteria::pluck('nama_kriteria', 'id');
    $kriteria2 = Model\Kriteria::pluck('nama_kriteria', 'id');

    $data = [
        'kriteria1' => $kriteria1,
        'kriteria2' => $kriteria2
    ];

    return view('kriteria_kriterias.create')->with($data);
}

如何在blade文件中输出:

{{ $kriteria1 }}
{{ $kriteria2 }}

或者您更新控制器以传递完整的结果:

public function create($id1, $id2)
{

    $kriteria1 = Model\Kriteria::find($id1);
    $kriteria2 = Model\Kriteria::find($id2);

    $data = [
        'kriteria1' => $kriteria1,
        'kriteria2' => $kriteria2
    ];

    return view('kriteria_kriterias.create')->with($data);
}

并且在 blade 中,您可以通过多种方式访问​​数据,一种方式是在 blade 模板中使用 blade 的 foreach 循环:

@foreach($kriteria1 as $k1)
    {{ $k1 }}
@endforeach

@foreach($kriteria2 as $k2)
    {{ $k2 }}
@endforeach'

要在控制器中动态接受多个值,您可以尝试这样的操作:

public function create($ids)
{

    $results = collect([]);

    foreach($ids as $id) {

        $kriteria = Model\Kriteria::findOrFail($id);

        if($kriteria) {
            $results->put('kriteria' . $id, $kriteria);
        }
    }

    return view('kriteria_kriterias.create')->with($results);
}    

然后使用上面提到的相同循环方法将它们显示在 blade 或获取计数并相应显示的 for 循环中。