Bring a large pot of salted water to a boil. Cook spaghetti according to package instructions until al dente. Drain and set aside.
In a large skillet, heat olive oil over medium heat. Add chopped onions and sauté until softened, about 3 minutes.
Add garlic and cook for an additional 30 seconds until fragrant.
Stir in ground turkey and cook until browned and cooked through, about 6–8 minutes. Season with salt and pepper.
Pour in diced tomatoes and tomato sauce. Add basil and oregano. Stir well and simmer uncovered for 10 minutes, allowing flavors to blend.
Add the cooked spaghetti to the skillet and toss to coat in the sauce.
Serve hot, garnished with fresh parsley and grated parmesan if desired.