         |> Enum.map(&("    " <> &1))
         |> Enum.join("\n")
 
+      statement = case verb do
+                    :alter -> "#{verb} table(:#{table_name}) do"
+                    :create -> gen_table_statement(table_name)
+                  end
+
       change = """
-          #{verb} table(:#{table_name}) do
+          #{statement}
       #{adds}
           end
       #{constraints}

    fun.(repo, path, file, name)
    Map.put(config, :timestamp, timestamp + 1)
  end

  ################
  # Web

  defp gen_invitable_migration(%{invitable: true, migrations: true, boilerplate: true} = config) do
    do_gen_migration config, "create_coherence_invitable", fn repo, _path, file, name ->
      change = """
          #{gen_table_statement(:invitations)}
            add :name, :string
            add :email, :string
            add :token, :string
