Descasque as batatas, corte-as ao meio e coza-as em água temperada com sal, por 20 minutos. Entretanto, leve um tacho ao lume com o leite e deixe ferver. Junte as postas de pescada e coza-as, durante dez minutos. Decorrido o tempo, escorra o peixe, reservando o leite e coloque-o num tabuleiro, reserve.
Corte as cebolas e os alhos às rodelas para um tacho. Junte o louro e o azeite, leve ao lume e deixe cozinhar até a cebola ficar transparente. Adicione 1 dl do leite de cozer a pescada, mexa e tempere com sal e pimenta. Deixe ferver um pouco e retire do lume. Ligue o forno a 200ºC.
Escorra as batatas, reduza-as a puré e junte-lhes a margarina, mexendo. Adicione o ovo batido, mexa e verta o restante leite de cozer a pescada, aos poucos e apenas o necessário, até ficar com um puré macio e consistente. Retifique o sal e tempere com uma pitada de pimenta. Disponha agora a cebolada por cima do peixe. Coloque o puré num saco de pasteleiro com boquilha frisada e coloque aos montinhos à volta da pescada. Espalhe ainda a maionese por cima e leve ao forno até ficar bem douradinho. Retire e sirva, de seguida, decorando com pickles a gosto.