For some reason after i build my canteen it shows a warning that says "No prisoners assigned to this canteen" and i have no idea why. My prison is fenced in and no staff only areas are blocking prisoners routes to the cantten,
I had the same problem, and soon found a reddit thread that explained why this was happening:
To get to the canteen prisoners have to go outside where there is no blocked off area preventing them from escaping. The game prevents any prisoners from accessing this area because they could escape. Try fencing the outside of your prison off.
I also had this problem.
I forgot that I'd set the entire outside area to "Staff Only" in the Deployment tab while I was building the new prison area, and ended up starving a bunch of my prisoners for a few days until I figured out why they weren't going to eat! Whoops!
After searching for almost an hour trying to figure out what was going on, I realized I had made a building expansion to an existing building. I had brought the fence to the edge of it, BUT because I didn't create a door or entry into the building edition, it was incomplete. As a result, I had an opening in my perimeter because of the incomplete building.
You can fix it by fencing off the prison. Once the prison is surrounded by road gates and fence or water, the canteen should work normally.
I also had this problem but i solved it my own way. I had added a staffroom to my prison with vending machines inside and i realised that all the prisoners were going to the staffroom, presumably for the vending machines. I then made it so only staff could go in the staffroom via the deployment tab and this worked. So i suggest that all places that you wouldn't see prisoners go, make them off limits to everyone but staff.
I once tried making two canteens, med sec and max sec, connected. The med was in top and max on the bottom. However, the max sec peeps were not eating, and the canteen said no one was assigned to eat. I even checked the logistics and made sure the max sec wing ate at the max sec canteen, which was the canteen having that had the problem. I was stumped. Then I finally understood that in order to get into their canteen, the max sec had to walk through the med sec canteen, which was off limits to t hem (again, I designated the top canteen med sec) That was why they couldn't eat. So I made a short hallway around the med sec and to the max sec canteen, thus solving all this kerfuffle.