Add the onion and garlic and fry gently for 10 minutes until soft.
Add the chopped tomatoes and a pinch of salt and pepper. Simmer for 5 mins until thickened a little. Set aside.
To make the cannelloni filling
In another pan, warm the oil and butter over a medium heat, then add the nutmeg and garlic and fry for 30 seconds.
Add the spinach and cook gently until just wilted, then tip into a bowl to cool.
Once cool. finely chop and return to the bowl.
Add the ricotta and grated hard cheese, mix, season to taste and set aside.
To make the white sauce
Melt the butter and oil in a pan over a medium heat
Add the flour and milk and whisk over the heat until the sauce is thickened.
Season and set aside.
To assemble
Grease a large roasting tray, then pour the tomato sauce into the base, spreading evenly.
Fill a piping bag with the spinach and ricotta mix and then snip off the end. Use to fill the cannelloni shells.
Lay the filled cannelloni on top of the tomato sauce in a single layer.
Pour the white sauce all over, aiming for an even coating that should just cover the pasta.
Scatter the grated cheese over the top.
Season with salt and pepper.
Bake at 200C (180C fan, 390F) for 30-35 minutes until the pasta is tender, which you can check by pushing a skewer into the centre of a cannelloni shell.