У меня есть следующий POJO/ПЫЙ:Форматирование POJO внутри Grails/GSP выбора элемента
class Person {
String firstName
String lastName
int age
// ... lots of other fields
}
и контроллер Grails 2.3.6:
class PeopleController {
List<Person> people = new ArrayList<Person>()
def populatePeople() {
// Add lots of people to the 'people' list.
}
def doSomething() {
populatePeople()
render(
view: "people",
model:[
people: people,
]
)
}
}
, а затем в GSP:
<div id="peopleSelector">
<g:select name="people" from="${people}" />
</div>
Когда я запускаю свое приложение, я получаю элемент <select>
с [email protected]
-оценивая значения как <option>
с. Очевидно, что Grails не десериализует мои Person
экземпляры в довольно печатную форму.
Я хочу, чтобы имена людей и фамилии людей отображались как варианты выбора. Таким образом, если один из Person
экземпляров в people
списке:
Person smeeb = new Person(firstName: "Smeeb", lastNname: "McGuillocuty")
Тогда я бы ожидать «Smeeb McGuillocuty» как выбрать опцию в окончательном формате HTML. Как это сделать?
Это странное отношение, но очень распространенное - зачем тратить формат toString для раскрывающегося списка html, когда вы можете сделать немного больше работы для настройки самого раскрывающегося списка. Это не то, о чем я говорю, но это кажется таким обратным. –
@BurtBeckwith возможно, потому что вам когда-либо приходилось делать головы или хвосты от какого-то утверждения или debug-println? Или это может быть только я;) – cfrick