Django sobre Postgresql: el uso de inserto de sql sin procesar con la declaración de retorno no funciona

Usando Postgresql 9.3 + PostGIS con django, estoy tratando de ingresar un registro a mi mesa y devolver el ID dado como tal

def join(request):
    from django.db import connection, transaction
    cursor = connection.cursor()
    id = cursor.execute("insert into table1 values(DEFAULT, 'temp', null,-4, null,null, null, null, DEFAULT, 1,null,DEFAULT,DEFAULT, null) returning id")
    transaction.set_dirty()

    return HttpResponse(id)

esto vuelveNone, ¿cómo puedo obtener el ID que se devuelve de la consulta SQL?

Respuestas a la pregunta(2)

Su respuesta a la pregunta