使用laravel中数据库中检索到的值重定向到同一页面?

时间:2017-07-07 11:30:37

标签: php mysql laravel

查看代码:

 <li class="active"><a href="#tab_1" data-toggle="tab"  id="versiontab" 
onclick="window.location='{{ url("versiondb") }}'" >Version 
 Database</a></li>

这是我的视图代码。这也是一个标签。点击网址重定向的标签。

路线代码:

Route::get('versiondb','versiondbController@select');

Controllercode:

public function select()
{

    $users=debModel::all();
    return redirect()->back()->with($users);

}

这里它应该从db中获取值并重定向回同一页面并在表格中显示已检索的值。但是我在这里收到错误 $ users undefined

在同一视图内(上面指定):

 <table class="table" id="table">
      @foreach($users as $users)
        <thead>
          <tr class="header">
              <th valign="middle" width="3%">Versions</th>
              <th valign="middle" width="2%">Supported versions</th>
              <th valign="middle" width="10%">Release Date</th>
              <th valign="middle" width="3%">Type</th>
              <th valign="middle" width="10%">Description</th>
              <th valign="middle" width="3%">Actions</th>
              <th valign="middle" width="3%">Downloader</th>
              <!--<th valign="middle" width="3%">Beta code</th>-->

            </tr>
            </thead>
            <tbody>
            <tr>
            <td>{{$users->versions}}</td>
            <td></td>

            </tr>
          @endforeach
            </tbody>

                </table>

我认为这是发生错误的地方。

3 个答案:

答案 0 :(得分:0)

使用($users as $user)代替($users as $users)

@foreach($users as $user)

在你的模板中

<td>{{$user->versions}}</td>

同时更改控制器

return view('haghwayUpdate')->with('users',$users);

答案 1 :(得分:0)

问题在于:

@foreach($users as $users)

这里您的数组变量名称和每次迭代中保存数据的变量是相同的,因此将其更改为:

@foreach($users as $user)
  <td>{{$user->versions}}</td>

答案 2 :(得分:0)

当您在Laravel中使用“-> with”时,Laravel返回带有该会话消息的页面。  在您的情况下使用

public function select()
{

$users=debModel::all();
return redirect()->back()->with("message","I generated all users");

}

将在您的刀片中以

的形式访问
@if (session('message'))
        <div class="alert alert-success">
             {{ session('message') }}
        </div>
 @endif

您问题的解决方案是这样写

public function select()
{

$data['users']=debModel::all();
return view("viewdeb",$data);

} 那么您的刀片将需要一个foreach循环

@foreach ($users as $user)
  {{$user->firstname}}
@endforeach

请注意,只要将它们包含在数据数组中,就可以将更多数据发送回视图

public function select()
{

$data['users']=debModel::all();
$data['business']=businessModel::all();
return view("viewdeb",$data);

}