Heat the oven to 230°C/Fan 210°C/Gas 8. Measure out 1 tsp of the cumin seeds and 2 tsp of the coriander seeds. Put them in a dry frying pan with 4 cardamom pods. Toast over a medium heat for 1-2 mins. Keep shaking the pan so they don't burn.
Tip the spices into a pestle and mortar or spice grinder and grind (or use the end of a rolling pin to bash them). Throw away the papery green skins from the cardamom pods. Stir in half the yogurt with a pinch of salt.
Put the lamb leg steaks and spiced yogurt into a bowl. Mix. Leave for 5 mins. Drizzle 1 tbsp oil into a roasting tin. Put the lamb in the tin. Roast for 20-30 mins till cooked to your liking.
Peel and finely chop the onion. Peel and grate the ginger and garlic. Roughly chop the tomatoes.
Warm ½ tbsp oil in a pan. Add the onion. Season. Stir and fry for 5 mins till it looks glossy. Add the tomatoes, garlic and ginger. Stir and fry for 1 min. Fill the kettle and boil it.
Add the rice to the onions and tomatoes. Pour in 250ml hot water. Cover. Simmer over a medium heat for 6 mins till the water has been absorbed. Take the rice off the heat. Leave it to steam with the lid on for 4 more mins to finish cooking the rice.
Add the spinach to the rice. Fork it through so the spinach just wilts. Serve the rice with the lamb leg steaks and the rest of the yogurt.