División de pandas (.div) con multiindex

Tengo algo parecido a esto

df = pd.DataFrame(np.random.randint(2, 10, size = (5, 2)))
df.index = pd.MultiIndex.from_tuples([(1, 'A'), (2, 'A'), (4, 'B'), 
           (5, 'B'), (8, 'B')])
df.index.names = ['foo', 'bar']
df.columns = ['count1', 'count2']
df

lo que da:

       count1 count2
foo bar     
1   A    6     7
2   A    2     9
4   B    6     7
5   B    4     6
8   B    5     6

También tengo una lista de totales, obtenidos de otra parte, por el mismo índice 'foo':

totals = pd.DataFrame([2., 1., 1., 1., 10.])
totals.index = [1, 2, 4, 5, 8]
totals.index.names = ['foo']
totals

lo que da:

     0
foo 
1    2
2    1
4    1
5    1
8    10

¿Cómo puedo dividir todas las columnas dedf (count1 ycount2) por el número foo que está entotales? (Por lo tanto, tengo que coincidir con el número 'foo')

lo comprobéesta pregunta, que parece que debería hacer el truco, pero no pude resolverlo.

Lo intenté

df.div(totals, axis = 0)

y cambiando elnivel opción endiv, pero no hay éxito.

Como siempre, muchas gracias por tu tiempo.

Respuestas a la pregunta(2)

Su respuesta a la pregunta