When a city becomes eligible for an upgrade an exclamation ! notice should pop up that targets it, and a new "Upgrade City" button should appear in the city's menu. This would allow the player to access all information on their empire and the game's mechanics prior to deciding the direction of a city's growth; instead of forcing them to do so prematurely. I personally would love to know which buildings in each tech tree are permitted by the different upgrades, and sometimes even need help remembering what certain buildings do. Just let the user decide to upgrade a city at their own discretion via a system similar to that of all other developments, after they have been able to do the research necessary to make a well-informed decision:
I base part of my decision of what type of city on where it is located on the map. I like to keep the high resource cities in the center of my territory, if possible, for better protection. I like to have my fortresses on the outer rim of my territory because the city has better defenses.
^This is not a flawed strategy, but a wise one. The gaming environment, the user interface, needs to foster such creativity.