Preheat your oven to 375°F (190°C).
Cook the rigatoni pasta according to package instructions until al dente. Drain and set aside.
In a large skillet, heat the olive oil over medium heat. Add the chopped onion and cook until translucent, about 5 minutes.
Add the minced garlic and ground beef to the skillet. Cook until the beef is browned and cooked through, breaking it up with a spoon, about 7-10 minutes.
Stir in the crushed tomatoes, oregano, basil, salt, and pepper. Let the mixture simmer for about 10 minutes, allowing the flavors to meld.
In a large bowl, combine the cooked rigatoni with the meat sauce, mixing well.
Transfer half of the rigatoni mixture to a greased 9x13-inch baking dish. Sprinkle half of the mozzarella cheese over the top. Add the remaining rigatoni mixture and top with the rest of the mozzarella and the grated Parmesan cheese.
Cover the dish with aluminum foil and bake for 20 minutes. Remove the foil and bake for an additional 10-15 minutes, or until the cheese is bubbly and golden.
Remove from the oven and let it cool for a few minutes. Garnish with fresh basil leaves if desired before serving.