私のデータベースのデータを取得する際に問題があります。 私は2つのモデルのUser、Followerを持っています。ラーベル関係のエラー
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class Follower extends Model
{
public function mentor()
{
return $this->belongsTo('App\User','id','mentor_id');
}
public function follower()
{
return $this->belongsTo('App\User','id','user_id');
}
}
<?php
namespace App;
use Illuminate\Contracts\Auth\Authenticatable;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Support\Facades\App;
use Illuminate\Support\Facades\Cache;
use Illuminate\Support\Facades\DB;
use App\Friend;
use App\Follower;
class User extends Model implements Authenticatable
{
public function followers()
{
return $this->hasMany('App\Follower','mentor_id','id');
}
public function follows()
{
return $this->hasMany('App\Follower','user_id','id');
}
}
データベース '信者'
<?php
use Illuminate\Support\Facades\Schema;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
class CreateFollowerTable extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::create('followers', function (Blueprint $table) {
$table->increments('id');
$table->integer('user_id');
$table->integer('mentor_id');
$table->rememberToken();
$table->timestamps();
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::dropIfExists('followers');
}
}
私は
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Follower;
use Illuminate\Support\Facades\Auth;
use App\User;
class FollowerController extends Controller
{
public function getFollows(Request $request)
{
$follows=Auth::user()->follows()->get();
return view('follows',['follows' => $follows]);
}
public function getFollowers(Request $request)
{
$followers=Auth::user()->followers()->get();
return view('followers',['followers' => $followers]);
}
}
そして、ここでは私が取得しています私のFollowerControllerを介してデータを取得していますこのようなエラー enter image description here
私はなぜbがわからないそれはSQLリクエストに 'users'というものを追加します。 私が助けてくれればとても楽しいです
ユーザテーブルに 'mentor_id'(外部キー)がありません。最初に定義する –
'スキーマ:: create( 'following.blade.php'、function(Blueprint $ table)'何? – Sandeesh
ok失敗するとエラーが発生する – OrestKhomitskyi