魔法王国的苏菲亚公主一直把随身戴着的项链当做自己的护身符,某一天她突然得知,这个护身符里居然封印着一个等待重获自由的公主。邪恶女巫史瑞奇入侵了阿瓦洛王国,杀死了国王和王后。阿瓦洛的法师为了保护年轻的艾莲娜公主,便把她封印进了护身符中。而这个护身符几经辗转,来到了苏菲亚的手中。为了解救艾莲娜和阿瓦洛的百姓,人小胆大的苏菲亚公主踏上了一场冒险之旅。。故事发生在一间名为“鸟笼”的夜总会中,艾伯特(内森·连恩 Nathan Lane 饰)是其中的当家花旦,不仅如此,他和夜总会的老板阿曼德(罗宾·威廉姆斯 Robin Williams 饰)还是出双入对的同性情人。 某日,阿曼德同前妻所生的儿子瓦尔(丹·福特曼 Dan Futterman 饰)找到了老爸,喜滋滋的告诉他他即将带着未婚妻芭芭拉(卡莉斯塔·弗洛克哈特 Calista Flockhart 饰)前来造访。阿曼德在感到欣喜的同时亦十分紧张,因为芭芭拉的父母凯文(吉恩·哈克曼 Gene Hackman 饰)和路易斯(黛安娜·维斯特 Dianne Wiest 饰)是保守派人士,如果让他们知道了自己同艾伯特之间的关系,儿子的婚事可能就要岌岌可危了。于是,阿曼德开始劝说艾伯特,让他假扮成为一个正常人,表面上答应了阿曼德的请求,艾伯特的内心里却十分郁闷。。