Cut the fish into good bite sized portions and season with salt and pepper and set aside.
Bring a large pot of water to boil. Add a good pinch of salt and spaghetti and cook according to package directions. Drain and toss the spaghetti with some oil and set aside.
In a skillet add the oil and red onion over medium high heat and saute it for 2 to 3 minutes. Then add the garlic and red pepper flakes and when the oil starts to simmer, add the tomatoes and season with salt and pepper.
Crush the tomatoes while stirring for 2 to 3 minutes and then add the basil and parsley and bring it to a boil. Then turn the heat to low and simmer for 20 minutes.
Add the the fish and stir into the mixture. Then cover the skillet and cook for an additional 6 to 10 minutes or until the fish is cooked through.
Add the spaghetti and toss to combine.
You can also crush the tomato by your hand before putting into the skillet.