id(); $table->timestamps(); $table->integer('site_id')->unsigned(); $table->string('userid',128); $table->binary('oauth_data', 65535)->nullable(); $table->integer('user_id')->unsigned()->nullable(); $table->integer('provider_oauth_id')->unsigned(); $table->foreign(['provider_oauth_id','site_id'])->references(['id','site_id'])->on('provider_oauth'); $table->index(['user_id','site_id']); $table->foreign(['user_id','site_id'])->references(['id','site_id'])->on('users'); $table->unique(['id','site_id']); $table->unique(['site_id','user_id','provider_oauth_id']); }); } /** * Reverse the migrations. * * @return void */ public function down() { Schema::drop('user_oauth'); } };