Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/powerbi/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在表中输入的playframework_Playframework - Fatal编程技术网

在表中输入的playframework

在表中输入的playframework,playframework,Playframework,我们有一个列表,我们将其输出到要呈现的页面中,还有一个表,它逐行显示每个票据 <tbody> #{list reqs, as:'req'} <tr> <td>#{req.ticketNumber}</td> <td> <input type="text" class="boxtpl" name="${req.name}" value="${req.points

我们有一个列表,我们将其输出到要呈现的页面中,还有一个表,它逐行显示每个票据

<tbody>
    #{list reqs, as:'req'}
    <tr>
        <td>#{req.ticketNumber}</td>
        <td>
            <input type="text" class="boxtpl" name="${req.name}" value="${req.points}" maxlength="4">
        </td>
        <td style="text-align: left;">#{req.name}</td>              
        <td>#{req.subproject.name}</td>                 
        <td>#{req.assignedUser.firstName} #{req.assignedUser.lastName}</td>             
    </tr>
    #{/list}
</tbody>

#{列出需求,如:'req'}
#{req.ticketNumber}
#{req.name}
#{req.subproject.name}
#{req.assignedUser.firstName}{req.assignedUser.lastName}
#{/list}
因此,显然呈现是最简单的部分……我们如何进行发布部分,以便用用户键入的内容填充req.points?似乎我们必须做一些复杂的事情,比如使用req.name或其他什么,我甚至不确定这是否可行。有人举过如何在playframework中从表发布表单的例子吗

谢谢,
迪恩

我想我做了一些与你所寻找的类似的事情。这是一个简化版本,允许编辑和发布实体列表:

  #{form id:'targetsForm', method:'POST', action:@saveTargets()}
    <table>
      <thead>
      <tr>
        <th>January</th>
      </tr>
      </thead>
      <tbody>
        %{int i = 0; String fieldName = null;}%
        #{list items:targets, as:'target'}
        <tr>
          %{ fieldName = "targets[${i}].id" }%
          #{field "${fieldName}"}
          <input type="hidden" name="${field.name}" value="${targets[i].id}"/>
          #{/field}
          %{ fieldName = "targets[${i}].year" }%
          #{field "${fieldName}"}
          <input type="hidden" name="${field.name}" value="${year}"/>
          #{/field}
          <td class="center">${target.branch?.code}</td>
          %{ fieldName = "targets[${i}].jan" }%
          #{field "${fieldName}"}
          <td class="center">
            <input type="number" name="${field.name}" value="${targets[i].jan}"/>
          </td>
          #{/field}
        </tr>
        %{i++;}%
        #{/list}
      </tbody>
    </table>
    <input type="submit" name="_save" id="save-targets" value="Save""/>
 #{/form}
#{表单id:'targetsForm',方法:'POST',操作:@saveTargets()}
一月
%{int i=0;字符串fieldName=null;}%
#{列出项目:目标,如:'target'}
%{fieldName=“targets[${i}].id“}%
#{field“${fieldName}”
#{/field}
%{fieldName=“targets[${i}]。年份“}%
#{field“${fieldName}”
#{/field}
${target.branch?.code}
%{fieldName=“targets[${i}].jan”}%
#{field“${fieldName}”
#{/field}
%{i++;}%
#{/list}

我想我做了一些和你想做的相似的事情。这是一个简化版本,允许编辑和发布实体列表:

  #{form id:'targetsForm', method:'POST', action:@saveTargets()}
    <table>
      <thead>
      <tr>
        <th>January</th>
      </tr>
      </thead>
      <tbody>
        %{int i = 0; String fieldName = null;}%
        #{list items:targets, as:'target'}
        <tr>
          %{ fieldName = "targets[${i}].id" }%
          #{field "${fieldName}"}
          <input type="hidden" name="${field.name}" value="${targets[i].id}"/>
          #{/field}
          %{ fieldName = "targets[${i}].year" }%
          #{field "${fieldName}"}
          <input type="hidden" name="${field.name}" value="${year}"/>
          #{/field}
          <td class="center">${target.branch?.code}</td>
          %{ fieldName = "targets[${i}].jan" }%
          #{field "${fieldName}"}
          <td class="center">
            <input type="number" name="${field.name}" value="${targets[i].jan}"/>
          </td>
          #{/field}
        </tr>
        %{i++;}%
        #{/list}
      </tbody>
    </table>
    <input type="submit" name="_save" id="save-targets" value="Save""/>
 #{/form}
#{表单id:'targetsForm',方法:'POST',操作:@saveTargets()}
一月
%{int i=0;字符串fieldName=null;}%
#{列出项目:目标,如:'target'}
%{fieldName=“targets[${i}].id“}%
#{field“${fieldName}”
#{/field}
%{fieldName=“targets[${i}]。年份“}%
#{field“${fieldName}”
#{/field}
${target.branch?.code}
%{fieldName=“targets[${i}].jan”}%
#{field“${fieldName}”
#{/field}
%{i++;}%
#{/list}

您可以使用列表标记的索引变量为您的姓名编制索引

<input type="text" class="boxtpl" name="req[${req_index-1}].name" value="${req.points}" />

然后你回到你的控制器中,得到一个列表


小心,play会对JPA对象进行一些合并操作,如果您有一些嵌套对象,您可能会遇到一些问题

您可以使用列表标记的索引变量为您的姓名编制索引

<input type="text" class="boxtpl" name="req[${req_index-1}].name" value="${req.points}" />

然后你回到你的控制器中,得到一个列表

小心,play会与JPA对象进行一些合并,如果您有一些嵌套对象,则可能会出现一些问题