Laravel学习笔记(19)博主的粉丝和关注

  1. 前端

resources/views/user/show.blade.php

<a href="{{route('follower', $user)}}" class="btn btn-success">他的粉丝{{$user->follower()->count()}}</a>
<a href="{{route('following', $user)}}" class="btn btn-success">他的关注{{$user->following()->count()}}</a>

resources/views/layouts/default.blade.php

<a href="{{route('following', [auth()->user(), '1'])}}" class="btn btn-danger my-2 my-sm-0 mr-2">空间</a>
  1. 路由
Route::get('follower/{user}', 'FollowController@follower')->name('follower');
Route::get('following/{user}/{token?}', 'FollowController@following')->name('following');

'following/{user}/{token?}'传递多个参数,并第二个参数可以不传

  1. 控制器
    public function follower(User $user) {
        $title = '他的粉丝';
        $users = $user->follower()->paginate(10);
        return view('follow.follow', compact('users', 'title'));
    }

    public function following(User $user, $token = '') {
        if (!empty($token)) {
            $title = '我的关注';
        } else {
            $title = '他的关注';
        }
        $users = $user->following()->paginate(10);
        return view('follow.follow', compact('users', 'title'));

    }
  1. 模板
@extends('layouts.default');
@section('content')
<div class="card">
    <div class="card-header">
        {{$title}}
    </div>
    <div class="card-body">
        <table class="table">
            <tbody>
                @foreach($users as $user)
                    <tr>
                        <td>{{$user->name}}</td>
                    </tr>
                @endforeach
            </tbody>
        </table>
    </div>
    <div class="card-footer text-muted">
        {{$users->links()}}
    </div>
</div>
@endsection

发布了40 篇原创文章 · 获赞 0 · 访问量 773

猜你喜欢

转载自blog.csdn.net/qj4865/article/details/104265791
今日推荐