My 3 year old has always been a good sleeper/napper and is so much happier when she gets one. She goes to JK at daycare and they still insist the children nap (or at least have quiet time) for an hour.
I dont fight with her at the weekend anymore, but i do insist that she stays in her room for an hour at least, she can read in there or play with her soft toys - sometimes she does fall asleep, but if not at least she (and I) are getting some down time.
will also instill the above in my 18 month old once she starts to fight with me at nap time.
it takes a little while for them to get use to this concept, staying in the room and being quiet, but trust me its great, and also means you get a break to yourself :-)