1
我有一個表格根據我的數據庫中的實體動態生成字段(我的實體是課程)。對於每個新課程,它都會添加一個表單字段來修改它的排序順序。我的問題是,我如何在我的課程表中動態顯示這些單獨的表單域?枝條窗體小部件動態選擇表單字段
我的形式邏輯:
foreach ($entities as $id => $course) { //$id key included to show you courses key value
$formBuilder->add($course->getId(), 'text', array(
'data' => $course->getsortOrder(),
'label' => false,
'attr' => array('class' => 'sort' /*, 'style' => 'visibility:hidden;'*/)
));
}
我的jQuery來修改表單字段:
$(document).ready(function() {
$(".records_list tbody").sortable({items: "tr"},
{stop: function(event, ui) {
$(".sort").each(function(index) {
$(this).val(index);
});
}
});
});
/* I tested the proper functionality of this jQuery by putting
<input type="text" class="sort" value="{{ entity.sortOrder }}">
into the <td> that sort order is in. I want to replace this with
something like {{ form_widget(form.{entity.id}) }} */
我可以輕鬆地說:
{% for entity in entities %}
<td>
{% if(entity.id == 1) %}
{{form_widget(form.1)}} //1 is entity id
{% else if (entity.id == 2) %}
{{form_widget(form.2)}} //2 is entity id
{% else if (entity.id == 3) %}
{{form_widget(form.3)}} //3 is entity id
{% endif %}
</td>
{% enfor %}
但是,這顯然不是很活躍。你添加一個新課程,然後休息。
這將是很好,如果我可以說
{% for entity in entities %}
<td>
{% set course = entity.id %}
{{form_widget(form.course)}}
</td>
{% endfor%}
但可悲的是不工作。
任何有關如何動態地將這些表單字段添加到我的sortOrder的深入瞭解。
這正是我需要的!謝謝!順便說一句我試圖通過將我的課程所在的
相關問題