Я хочу добавить inputText к моей dataTable. этот inputText будет использоваться для добавления нового пользователя (Name, Role, Age) и сохранения его в базе данных. я могу обновить существующие значения в dataTable. Например, допустим, у меня есть этот dataTable.Редактируемый dataTable с inputText
Что я хотел бы сделать, это динамически добавит поле inputText к первой строке таблицы по нажатию кнопки. Я заполняю значения, которые нужно вставить, и нажмите кнопку «Сохранить».
Идея я пришел с, чтобы добавить editable="true"
в DataTable и использовать <p:cellEditor>
и <p:rowEditor/>
вроде этого:
<p:dataTable var="item" value="#{userControler.users}" editable="true">
<p:column>
<p:cellEditor>
<f:facet name="output">
<h:outputText value="#{item.name}"/>
</f:facet>
<f:facet name="input">
<p:inputText value="#{item.name}" style="width:100%"/>
</f:facet>
</p:cellEditor>
</p:column>
<p:column>
<p:rowEditor />
</p:column>
</p:dataTable>
, а затем добавить нового пользователя epmty в мой список, обновить DataTable, редактировать новый пользователь и сохраните его на событии rowEdit
. есть ли другой способ сделать это?
Потому что проблема, с которой я сталкиваюсь, связана с моим составным идентификатором. когда я ввожу новое значение, я не могу знать, буду ли я обновлять или сохранять заданное значение. (предположим, что составной идентификатор - это имя и роль. Если я хочу вставить новое значение, а затем я сделаю ошибку и вставляю существующее значение, у меня будет обновление вместо сообщения об ошибке).
Надеюсь, что я достаточно ясен. если нет, я могу предоставить больше информации. Спасибо.