Preheat your oven to 350°F (175°C). Grease and flour a 9x13-inch baking pan.
In a large mixing bowl, combine the flour, sugar, baking soda, baking powder, salt, and cinnamon. Whisk until well blended.
In another bowl, mix together the buttermilk, vegetable oil, eggs, and vanilla extract until smooth.
Pour the wet ingredients into the dry ingredients and stir until just combined. Do not overmix.
Gently fold in the crushed pineapple, shredded coconut, and nuts (if using) until evenly distributed.
Pour the batter into the prepared baking pan and spread it evenly.
Bake in the preheated oven for 30-35 minutes, or until a toothpick inserted in the center comes out clean.
Allow the cake to cool in the pan for about 10 minutes before transferring it to a wire rack to cool completely.