You have Strings and City objects and are trying to compare them...
Change your select to:
<g:select name="city"
from="${City.list()}"
value="${cmd?.city?.id}"
optionKey="id" />
And in your controller:
cmd.city = City.findByName( "PQR" )