id(); $table->timestamps(); $table->integer('site_id')->unsigned(); $table->boolean('active')->default(false); $table->float('amount',10,0); $table->integer('invoice_id')->unsigned()->nullable(); $table->foreign(['invoice_id','site_id'])->references(['id','site_id'])->on('invoices'); $table->integer('payment_id')->unsigned(); $table->foreign(['payment_id','site_id'])->references(['id','site_id'])->on('payments'); $table->unique(['id','site_id']); $table->unique(['site_id','invoice_id','payment_id']); }); } /** * Reverse the migrations. * * @return void */ public function down() { Schema::drop('payment_items'); } };