Low-Rank Adaptation for Foundation Models: A Comprehensive Review