## 10.3 Reading Messages

#### Reading Messages in the View

The most common place that you need messages is inside the view. To read messages from the view just use the message tag:

    <g:message code="my.localized.content" />

As long as you have a key in your `messages.properties` (with appropriate locale suffix) such as the one below then Grails will look-up the message:

    my.localized.content=Hola, Me llamo John. Hoy es domingo.

Note that sometimes you may need to pass arguments to the message. This is also possible with the `message` tag:

    <g:message code="my.localized.content" args="${ ['Juan', 'lunes'] }" />

And then use positional parameters in the message:

    my.localized.content=Hola, Me llamo {0}. Hoy es {1}.

#### Reading Messages in Controllers and Tag Libraries

Since you can invoke tags as methods from controllers it is also trivial to read messages within in a controller:

    def show = {
    	def msg = message(code:"my.localized.content", args:['Juan', 'lunes'])
    }

The same technique can be used on tag libraries, but note if your tag library has a different namespace then you will need to `g.` prefix:

    def myTag = { attrs, body ->
    	def msg = g.message(code:"my.localized.content", args:['Juan', 'lunes'])
    }