0

是否可以使用 infyom laravel-generator yajra 数据表添加“列搜索”。

我将 tables_searchable_default 从 false 更改为 true

形成这个文档https://www.infyom.com/open-source/laravelgenerator/docs/8.0/configuration#options

但它并没有改变任何东西......

请问有解决办法吗?

预先感谢。

4

1 回答 1

0

我对 Infyom Gihthub 的回答

https://github.com/InfyOmLabs/laravel-generator/issues/972

我是如何做到的(在 yajra/datables-html/builler 中稍作修改 - 参见第 5 步)

0-https://datatables.net/examples/api/multi_filter.html
◦ reference example
1-php artisan infyom.publish:templates
2-resources/infyom/infyom-generator-templates/scaffold/views/datatable_body.stub

datatable_body.stub @section('third_party_stylesheets') @include('layouts.datatables_css') @endsection

{{-- $dataTable->table(['width' => '100%', 'class' => 'table table-striped table-bordered']) --}} {!! $dataTable->table(['width' => '100%', 'class' => 'table table-striped table-bordered'],true) !!} {{-- drawFooter --}}

3 config/datatables-html.php
'datatables::script', 'script' => 'layouts/script', ]; 4 resources/views/layouts/script.blade.php $(document).ready(function() { // 设置 - 为每个页脚单元格添加文本输入 $("#dataTableBuilder tfoot th").each( function () { var title = $(this).text(); $(this).html( "" ); } ); }); $(function(){window.{{ config('datatables-html.namespace', 'LaravelDataTables') }}=window.{{ config('datatables-html.namespace', 'LaravelDataTables') }}||{ };window.{{ config('datatables-html.namespace', 'LaravelDataTables') }}["%1$s"]=$("#%1$s").DataTable(%2$s ,initComplete : function () { // 应用搜索 this.api().columns().every( function () { var that = this; $( "input", this.footer() ).on( "keyup change clear", function () { if ( that.search() !== this.value ) { that .search( this.value ) .draw (); } } ); }); } } ); }); 5 • vendor/yajra/laravel-datatables-html/src/Html/Builder.php 公共函数 generateScripts() { $parameters = $this->generateJson(); $parameters=substr($parameters,0,strlen($parameters)-1); # 去掉最后一个 } 以添加参数 return new HtmlString( sprintf($this->template(), $this->getTableAttribute('id'), $parameters) ); } 搜索(this.value).draw();} } ); }); } } ); }); 5 • vendor/yajra/laravel-datatables-html/src/Html/Builder.php 公共函数 generateScripts() { $parameters = $this->generateJson(); $parameters=substr($parameters,0,strlen($parameters)-1); # 去掉最后一个 } 以添加参数 return new HtmlString( sprintf($this->template(), $this->getTableAttribute('id'), $parameters) ); } 搜索(this.value).draw();} } ); }); } } ); }); 5 • vendor/yajra/laravel-datatables-html/src/Html/Builder.php 公共函数 generateScripts() { $parameters = $this->generateJson(); $parameters=substr($parameters,0,strlen($parameters)-1); # 去掉最后一个 } 以添加参数 return new HtmlString( sprintf($this->template(), $this->getTableAttribute('id'), $parameters) ); } $parameters=substr($parameters,0,strlen($parameters)-1); # 去掉最后一个 } 以添加参数 return new HtmlString( sprintf($this->template(), $this->getTableAttribute('id'), $parameters) ); } $parameters=substr($parameters,0,strlen($parameters)-1); # 去掉最后一个 } 以添加参数 return new HtmlString( sprintf($this->template(), $this->getTableAttribute('id'), $parameters) ); }
于 2021-08-08T19:36:53.463 回答