id(); $table->foreignId('user_id')->constrained()->cascadeOnDelete(); $table->string('type'); // rated_game|added_game|completed_game|wrote_review|created_list $table->nullableMorphs('subject'); $table->json('data')->nullable(); $table->timestamps(); $table->index(['user_id', 'created_at']); }); } public function down(): void { Schema::dropIfExists('activities'); } };