Not sure if this is the source of the problem, but you’re not doing yourself any favours by using non-standard naming. By default, Cake expects your table names to be plural, e.g. contacts and societies, and the key relating them to then be like contact_id. With that structure, bake does a better job of building the default code for you.
What does your $society object look like after you do the patch?
I tried to recreate a database with cakephp standards but the problem is the same: the foreign key is required. However in all the tutorials I have seen, I do not see anyone having this problem. Do you know how I could solve it please?
Thanks so much.