在这里做一些假设,因为没有发布代码,并假设您使用的是最新版本的 Laravel,Laravel 5。
假设您的数据库中有一个名为 users 的表,并且您有一个名为 Users 的模型(Laravel 5 默认带有用户模型,请参阅app/Users.php)。用户将是我们链接数据的基础。
首先,您要注册一条路线,以便您可以访问该页面以查看一些信息。您可以在路由文件中执行此操作。路由文件可以在这里找到:app/Http/routes.php。
要注册路由添加以下代码:
Route::get('users', ['uses' => 'UserController@index']);
现在这条路由的作用是每当我们在我们的网络浏览器中点击 URL http://your-app-name/public/users(URL 可能会有所不同,具体取决于您的应用设置方式,即您可能不必包含 public)在我们的网络浏览器中通过在UserController 上运行index 方法。
要响应该路线,您可以这样设置UserController:
<?php namespace App\Http\Controllers;
class UserController extends Controller {
public function index()
{
}
}
控制器应该存储在app/Http/Controllers/。
现在让我们充实index 方法:
public function index()
{
// grab our users
$users = App\Users::all();
// return a view with the users data
return view('users.index')->with('users');
}
这会从数据库中获取用户并加载一个传递用户数据的视图。
您的视图可能如下所示:
<!DOCTYPE html>
<html>
<head>
<title>Users Page</title>
</head>
<body>
@foreach($users as $user)
<a href="{{ URL::route('user', ['id' => $user->id]) }}">
{{ $user->username }}
</a>
@endforeach
</body>
</html>
视图代码将从我们传递给视图的$users 数据中循环遍历每个用户,并创建一个指向其用户页面的链接,该链接根据每个用户的 id(他们在数据库中的唯一标识符)而有所不同
由于我命名它的方式,它可以在 app/views/users/index.blade.php 中找到 - 如果你保存以 blade.php 结尾的文件,你可以使用 Laravel 的模板语言刀片。
现在您最终需要设置另一个路由来响应用户页面,例如http://your-app-name/public/user/22。
Route::get('user/{id}', ['uses' => 'UserController@show']);
然后将show方法添加到UserController
public function show($id)
{
// this will dump out the user information
return \App\User::find($id);
}
希望能有所帮助!大部分都写在我的脑海里,所以如果你有任何错误,请通过评论告诉我。