If the student is using an English name during English classes, it doesn't matter so much, but since she is supposed to be learning English and all the nuances of it, she should understand that while Rainbow COULD be a name, and sometimes is, it isn't the usual thing. Ditto for Pineapple and Shoulder; these absolutely are not names.
If she is using the name in hopes of getting ahead in business in the western world, then, again, she should know that Rainbow isn't usually a given name and is not something most western adults would take seriously.
In high school language classes, we often chose French/Spanish?German names to use in class. I highly doubt anybody would be permitted to be called by the teacher anything like Wienerschnitzel, Bicyclette or Pistola.
You're entitled to your own opinions. You're not entitled to your own facts. -- Daniel Patrick Moynihan