【问题标题】:Sending data from Controller to View in Laravel 7在 Laravel 7 中将数据从控制器发送到视图
【发布时间】:2020-08-26 10:48:42
【问题描述】:

我想将我的数据从控制器发送到 xedit.blade.php,但我得到了同样的错误:

 Undefined variable: users

在控制器中:

public function index3()
    {
        $users=User::all();

    return view('xedit')->with('users' => $users);

    }

路线:

Route::get('/index3','Admin\UsersController@index3');

我想在刀片中使用 $users。也许有路由问题?

【问题讨论】:

  • 您正在使用箭头符号=> 而不使用数组。声明返回语句的正确方法是return view('xedit')->with(['users' => $users]);。或者,您可以使用compact,如该问题的答案之一所示。

标签: php html sql laravel web


【解决方案1】:

想发表评论但没有 50 声望

在使用 => 时,将 ('users' => $users); 替换为 (['users' => $users]);

【讨论】:

    【解决方案2】:

    在你的索引方法中

    public funtion index()
    {
         $users=User::all();
         return view('xedit', compact('users'));
    }
    

    在您的视图中添加 $users

    <table>
        @foreach ($users as $item)
            <tr>
                <td>{{ $item->id }}</td>
                <td>{{ $item->name }}</td>
            </tr>
        @endforeach
    </table>
    

    【讨论】:

      【解决方案3】:

      你的代码逻辑很完美,我想你必须使用正确的命名来命名你的路由,因为 Laravel 标准。

      Route::get('/admin/show','Admin\UsersController@index')-name('admin.show');
      
      public function index()
      {
          $users = User::all();
          return view('xedit')->with('users' => $users);
      }
      

      在看来,blade 使用了如下的专业方法

      @isset($users)
       ... loop ...
      @endisset()
      

      使用dump and die函数dd($users);发送查看之前检查记录

      【讨论】:

        猜你喜欢
        • 2021-04-07
        • 2019-11-13
        • 1970-01-01
        • 2016-07-14
        • 2014-08-18
        • 1970-01-01
        • 2018-01-05
        • 1970-01-01
        • 2021-03-25
        相关资源
        最近更新 更多