其他分享
首页 > 其他分享> > Laravel 5.8 做个知乎 14 —— 用户关注

Laravel 5.8 做个知乎 14 —— 用户关注

作者:互联网

1 创建表

php artisan make:migration create_followers_table --create=followers

 

    public function up()
    {
        Schema::create('followers', function (Blueprint $table) {
            $table->bigIncrements('id');
            //关注者id
            $table->integer('follower_id')->unsigned()->index();
            //被关注者id
            $table->integer('followed_id')->unsigned()->index();
            $table->timestamps();
        });
    }

 

php artisan migrate

2 代码

2.1 \resources\views\questions\show.blade.php

 <div class="card">
                    <div class="card-header follow">
                        <h5>关注作者</h5>

                    </div>
                    <div class="card-body">
                        <div class="media">
                            <div class="media-left">
                                <a href="#">
                                    <img width="36px;" src="{{$question->user->avatar}}" alt="{{$question->user->name}}">
                                </a>
                            </div>
                        </div>
                        <div class="media-body">
                            <h4 class="media-heading">
                                <a href="">{{$question->user->name}}</a>
                            </h4>
                        </div>
                        <div>
                            <span>问题</span>
                            <span>{{$question->user->questions_count}}</span>
                            <span>答案</span>
                            <span>{{$question->user->answers_count}}</span>
                            <span>评论</span>
                            <span>{{$question->user->comments_count}}</span>
                        </div>
                        <!-- vue 组件 -->
                        <user-follow-button user="{{$question->user_id}}"></user-follow-button>
                        <!-- vue 组件 -->
                        <send-message user="{{$question->user_id}}"></send-message>
                    </div>
                </div>
View Code

2.2  app\User.php

//关注用户
    public function followersUser()
    {
        //1 类 2 表名 3 外键 4 外键
        return $this->belongsToMany(self::class, 'followers', 'followed_id', 'follower_id')->withTimestamps();
    }

 

标签:Laravel,知乎,14,question,followers,user,table,php,id
来源: https://www.cnblogs.com/polax/p/15063984.html