在登录和注册页面Laravel 6中传递数据

问题描述 投票:0回答:4

我在Laravel 6中使用脚手架功能创建了登录和注册功能,并且我得到了这个LoginController:

<?php
...
...
class LoginController extends Controller
{
    use AuthenticatesUsers;
    protected $redirectTo = RouteServiceProvider::HOME;
    public function __construct()
    {
        $this->middleware('guest')->except('logout');
    }
}

我想将数据DB::table('terms_condition')->get()传递到登录视图,该怎么办?

laravel authentication view
4个回答
0
投票

将此方法放入LoginController

public function showLoginForm()
{
   $terms_condition = DB::table('terms_condition')->get();
   return view('auth.login',compact('terms_condition'));
}

showLoginForm()来自于AuthenticatesUsers使用的LoginController特性。您必须将此方法放入LoginController


0
投票

在登录控制器内部重写函数showLoginform

  public function showLoginForm()
    {
`      $data = DB::table('terms_condition')->get();
        return view('frontend.auth.login',compact('data'));
    }

或者从您的LoginController中,您可以看到AuthenticateUsers转到“验证用户”文件并编辑showLoginForm,就像这样

public function showLoginForm()
    {
`      $data = DB::table('terms_condition')->get();
        return view('frontend.auth.login',compact('data'));
    }

并且不要忘记在顶部使用数据库


0
投票

您可以在LoginController中覆盖内置的showLoginForm()方法

LoginController.php

use Illuminate\Support\Facades\DB;

class LoginController extends Controller
{
    use AuthenticatesUsers;
    protected $redirectTo = RouteServiceProvider::HOME;
    public function __construct()
    {
        $this->middleware('guest')->except('logout');
    }

    public function showLoginForm()
    {
        return view('admin.login',['terms'=>DB::table('terms_condition')->get()]); //pass your data here as a second argument
    }
}

然后您可以在刀片视图中以$terms的身份访问此>


0
投票

一种不同的解决方法:使用View Composer。这将在呈现视图时运行,因此您可以通过这种方式将数据传递给它:

© www.soinside.com 2019 - 2024. All rights reserved.