Idiom: "has/have a heart of gold"
We use the expression "has/have a heart of gold" to describe a person who we think is very kind. This person does good things for others and/or is very generous.
Example: "My friend Sandra has a heart of gold! Last weekend she stood outside in the cold for 6 hours collecting money for the local animal home."
However, sometimes we also use it when we talk about people that can be annoying but who have good intentions.
Example: "My dad has a heart of gold, he loves to help everybody. But sometimes I wish he would let me just do things for myself!"
In general the expression "has/have a heart of gold" is used as a compliment.