My girlfriend is way to naive and guys use that to take advantage, it pisses me off

I really love my girlfriend she is very funny and out going we have lots of fun together and she's also extremely generous almost like a saint, for example one time it was one of those awful rainy days and we were supposed to meet at a coffee and she arrived completely wet, she lied to me and told me she forgot her umbrella but later I found out she gave it to a homeless guy, there was other time when she got a extra money from work she was planning on buying clothes and stuff, but then she decided to donate the money to charity. She constantly does stuff like that and I really appreciate and admire her for that but sometimes people take advantage of her and she doesn't even realize because she think everyone is like her. She's also very hot and pretty so guys hit on her and take advantage of her kindness to get closer to her, , she acts nice like she acts with everybody and guys think she's flirting back. I know she doesn't realize because before we were in a relationship I had to be blunt and straight forward for her to see my intentions.

We get in some fights because of this problem is just so obvious to me, but she doesn't see it, what should I do?
My girlfriend is way to naive and guys use that to take advantage, it pisses me off
Post Opinion