【发布时间】:2014-06-09 04:40:32
【问题描述】:
我有一个包含以下内容的用户类:
public function school()
{
return $this->belongsToMany('School');
}
我有以下学校课程:
public function user()
{
return $this->belongsToMany('User');
}
我使用数据透视生成器创建数据透视表,这里是它的迁移:
public function up()
{
Schema::create('school_user', function(Blueprint $table) {
$table->increments('id');
$table->integer('school_id')->unsigned()->index();
$table->foreign('school_id')->references('id')->on('schools')->onDelete('cascade');
$table->integer('user_id')->unsigned()->index();
$table->foreign('user_id')->references('id')->on('users')->onDelete('cascade');
$table->boolean('admin');
$table->timestamps();
});
}
用户表、学校表和数据透视表中只有一项。当我这样做时
$user = User::where('email', '=', Input::get('email'))->first();
$schools = $user->schools;
return Response::json([
'success' => true,
'user' => $user->toArray(),
'schools' => $schools
]);
它为学校返回一个空值。我错过了什么吗?
【问题讨论】:
标签: laravel many-to-many relationship eloquent