Available actions for onUpdate / onDelete in Laravel 5.x

You can do all the options mentioned in phpmyadmin this way:

$table->...->onDelete('CASCADE');
$table->...->onDelete('SET NULL');
$table->...->onDelete('RESTRICT');

// do not call the onDelete() method if you want the RESTRICT option.

You have to make sure you set the foreign key field as nullable:

$table->...->unsigned()->nullable();

Referring to the source code:

`vendor/laravel/framework/src/Illuminate/Database/Schema/Grammars/Grammar.php` in the function compileForeign()

It just appends whatever you pass in to the table query.

    if (! is_null($command->onDelete)) {
        $sql .= " on delete {$command->onDelete}";
    }

    if (! is_null($command->onUpdate)) {
        $sql .= " on update {$command->onUpdate}";
    }

So, make sure you pass one of the following: "cascade", "no action", "restrict", or "set null"

NOTE: Do NOT use underscores in the actions like "set_null" and "no_action"