about summary refs log tree commit diff
path: root/laravel/database/migrations
diff options
context:
space:
mode:
authorZach DeCook <zachdecook@gmail.com>2018-12-27 01:05:36 -0500
committerZach DeCook <zachdecook@gmail.com>2018-12-27 01:05:36 -0500
commit67c377fe1d87bfb127bcbfa952e9119bd341d4e8 (patch)
treec9e902fbb34fc4c6aa39b70eef20d2e97c6b53e2 /laravel/database/migrations
parent793f9970376e99e2330d7285734a8966655e55aa (diff)
downloadprosongsa-67c377fe1d87bfb127bcbfa952e9119bd341d4e8.tar.gz
* Playlists: Set up many to many relationship
Diffstat (limited to 'laravel/database/migrations')
-rw-r--r--laravel/database/migrations/2018_12_27_052646_create_playlist_table.php41
1 files changed, 41 insertions, 0 deletions
diff --git a/laravel/database/migrations/2018_12_27_052646_create_playlist_table.php b/laravel/database/migrations/2018_12_27_052646_create_playlist_table.php
new file mode 100644
index 0000000..6b68c7f
--- /dev/null
+++ b/laravel/database/migrations/2018_12_27_052646_create_playlist_table.php
@@ -0,0 +1,41 @@
+<?php
+
+use Illuminate\Support\Facades\Schema;
+use Illuminate\Database\Schema\Blueprint;
+use Illuminate\Database\Migrations\Migration;
+
+class CreatePlaylistTable extends Migration
+{
+    /**
+     * Run the migrations.
+     *
+     * @return void
+     */
+    public function up()
+    {
+        Schema::create('playlists', function (Blueprint $table) {
+            $table->increments('id');
+            $table->text('name');
+            $table->timestamps();
+        });
+        Schema::create('playlist_song', function(Blueprint $table) {
+            $table->increments('id');
+            $table->unsignedInteger('playlist_id');
+            $table->unsignedInteger('song_id');
+            $table->unique(['playlist_id', 'song_id']);
+            $table->foreign('playlist_id')->references('id')->on('playlists');
+            $table->foreign('song_id')->references('id')->on('songs');
+        });
+    }
+
+    /**
+     * Reverse the migrations.
+     *
+     * @return void
+     */
+    public function down()
+    {
+        Schema::dropIfExists('playlist_song');
+        Schema::dropIfExists('playlists');
+    }
+}