Отправить запрос к помощнику формы CFTheels или к списку с запятыми в строковых элементах
У меня есть запрос, который возвращает имена в <lastnamd>, <firstname>
такой формат как
<cfquery name="instructorSelectList" dataSource="GIRSReport">
SELECT instructor_DBID,
last_name + ', ' + first_name as instructor_name,
hid
FROM instructors
WHERE working_status = 'active'
ORDER BY last_name, first_name
</cfquery>
Я хочу использовать этот запрос для помощника формы selectTag. Если я сделаю:
#selectTag
(
name="inst",
id="program",
options="#ValueList(instructorSelectList.instructor_name)#",
valueField="#ValueLIst(instructorSelectList.instructor_DBID)#",
display="#ValueList(instructorSelectList.instructor_name)#",
selected="",
label="HID",
multiple="no",
includeBlank="true",
size=1,
class="form-control",
prepend="<br/>"
)#
Тогда я получаю список, как <lastname1>, <firstname1>, <lastname2>, <firstname2>, ...
что явно не то, что я хочу.
Если я просто попытаюсь передать options
Параметр запроса, такой как options="#instructorSelectList.instructor_name#"
параметры не заполняются правильно.
Идея состоит в том, чтобы использовать помощник формы, эквивалентный
<cfselect
name="inst"
query="instructorSelectList"
queryPosition="below"
value="instructor_DBID"
display="instructor_name"
label="HID" size=1
class="form-control">
<option value=""></option>
</cfselect>
1 ответ
Решение
Я думаю, что вам нужно передать имя запроса в Options, без кавычек (или в кавычках, окруженных хешами), пока имена столбцов в кавычках.
#selectTag
(
name="inst",
id="program",
options=instructorSelectList,
valueField="instructor_DBID",
textField="instructor_name",
selected="",
label="HID",
multiple="no",
includeBlank="true",
size=1,
class="form-control",
prepend="<br/>"
)#
Дополнительная информация: документация CFWheels selectTag()