Why is "I take a turkey sandwich" wrong? How would that be translated into French, if not with "je prends un sandwich à la dinde"?
I think they want you to associate "prendre" with "to eat"/"to have" when connected with food. Some English speakers do use "to take" with meals, but not food items as far as I know.
- I take my breakfast at 7:00.
I don't know how you'd disambiguate between the two senses when it comes to turkey sandwiches though apart from context.
The verb "prendre" means "to have" in the context of food, i.e., to consume it. It is a versatile word with many different meanings, not just "take".
When talking about the flavor or main ingredient of a food, à is used and not de (usually with a definite article as well): Un gâteau au chocolat, une omelette au fromage, une glace à la vanille...
I understand that prendre in this context can be am having but in the courses in the beginning take is accepted by Duo why now suddenly not ?
The basic meaning of prendre is "take". But meanings do vary in different circumstances in different languages.
For example, the French say "Je prends le déjeuner à midi". In English we could say "I'm taking lunch at noon," but 99% We would say "I'm having/eating lunch...."
French words often have more than one meaning in English. This is the case with prendre. Early in the course we learned that it means "take". Now we're learning that it also means have, eat, consume.
Duo is teaching each meaning, one at a time, and there may be more to come.