Heat the oil in a deep pan and add all of the onions and the crushed hazelnuts. Cook for 2 minutes, stirring regularly to avoid scorching the nuts. Add the rice gradually, stir and cook for a few minutes until the rice is transulcent.
Pour in the coconut milk and 200ml (1/3pt) water and season. Mix well and bring to the boil, stirring regularly to avoid the rice sticking. Turn the heat down and simmer until all the liquid is absorbed and the rice is tender and fluffy.
Allow to cool completely, then add the chopped coriander and the eggs one by one and mix well until the the egg binds the rice together.
Butter a large sheet of nonstick baking paper and place on a baking tray (use two sheets if necessary). Dollop spoonfuls of the mixture onto the paper and flatten slightly to make patties about 1·5cm (¾in) thick and 7cm (3in) across. Chill for 8 hours in the fridge.
When ready to cook, heat the butter in a frying pan and cook the rice cakes on both sides, until heated through and crispy golden brown on both sides (you may need to do this in batches). Keep warm until ready to serve.