显示带有omines / datatables-bundle的搜索字段

时间:2018-12-10 19:41:02

标签: doctrine-orm datatables symfony4

我是omines / datatables-bundle的新手,显示搜索时出现问题。

我正在研究documentation,但无法使其正常运行。 香港专业教育学院创建了这样的表

$table = $dataTable->create()
          ->add('street', TextColumn::class, ["label" => "Street", "searchable" => true, "globalSearchable" => true])
          ->add('houseNumber', TextColumn::class, ["label" => "House number", "searchable" => true])
          ->add('postal', TextColumn::class, ["label" => "Postal Code", "searchable" => true])
          ->add('city', TextColumn::class, ["label" => "City", "searchable" => true])
          ->add('country', TextColumn::class, ["label" => "Country", "searchable" => true])
          ->createAdapter(ORMAdapter::class, [
            'entity' => CustomAddress::class,
          ])
          ->handleRequest($request);

        if ($table->isCallback()) {
            return $table->getResponse();
        }

        return $this->render('sales_request/add_custom_address.html.twig', ['datatable' => $table]);

此外,在我的树枝模板中

<div id="addresses">Loading...</div>
    <script src="{{ asset('bundles/datatables/js/datatables.js') }}"></script>
    <script>
        $(function() {
            $('#addresses').initDataTables({{ datatable_settings(datatable) }}, { searching: true });
        });
    </script>

数据表工作正常,排序工作正常,但是我没有看到搜索输入字段。如何配置它以显示它?

2 个答案:

答案 0 :(得分:0)

对于通过搜索发现此问题的任何人-实际上这是一个配置问题,我们没有足够详尽地记录下来。

默认的Symfony配方将DataTables native dom option设置为合理的默认值,但是由于并非通用要求,它省略了搜索字段。通常,应该为预期结果正确配置dom值。

有关更多信息,请参见https://github.com/omines/datatables-bundle/issues/57#issuecomment-453529328

答案 1 :(得分:0)

您只需添加dom选项:'Bfrtip'

<div id="addresses">Loading...</div>
<script src="{{ asset('bundles/datatables/js/datatables.js') }}"></script>
<script>
    $(function() {
        $('#addresses').initDataTables({{ datatable_settings(datatable) }}, { searching: true, dom: 'Bfrtip' });
    });
</script>