bnjns / laravel-searchtools
一个小型包,用于提供过滤和搜索条目的GUI。
Requires
- php: ^7.2
- laravel/framework: ^6.0
Requires (Dev)
- phpunit/phpunit: >= 4.0 < 9.0
- squizlabs/php_codesniffer: ^2.3||^3.4
README
此包为过滤和搜索条目提供一致的用户界面。此界面不包含任何后端功能以实现过滤或搜索,但提供了一个简单的方法将UI包含到您的Laravel视图中。
要求
目前,此包使用Bootstrap的下拉组件 - 请参阅 https://bootstrap.ac.cn/ 获取更多有关如何安装Bootstrap的信息。
安装
安装方法如下:
$ composer require bnjns/laravel-searchtools
或者,将以下内容添加到您的 composer.json
文件的 require
部分
"bnjns/laravel-searchtools": "dev-master"
设置
-
将以下内容添加到
config/app.php
文件中的providers
部分bnjns\SearchTools\SearchToolsServiceProvider::class,
-
将以下内容添加到
aliases
部分以使用Facade``` php use bnjns\SearchTools\Facades\SearchTools;'SearchTools' => SearchTools::class, ```
-
运行以下命令以发布包的视图和资产
$ php artisan vendor:publish --provider="bnjns\SearchTools\SearchToolsServiceProvider"
注意:步骤1和2在Laravel 5.5+中不是必需的。
使用方法
该包的大部分设置都是从 Request
对象自动检索的。后续版本可能会引入自定义设置。
显示UI
要渲染工具,只需包含以下内容
{!! SearchTools::render() !!}
设置过滤选项
要设置过滤选项列表,请使用 SearchTools::setFilterOptions($options)
。确保 $options
是一个数组,键是过滤值,值是可读文本。
如果您不想覆盖任何已经设置的现有选项,可以使用 SearchTools::addFilterOption($filter, $text)
手动将单个选项添加到数组的末尾。
显示和隐藏工具
此包尝试只显示相关的工具,但您可以使用 SearchTools::show('name');
和 SearchTools::hide('name');
来自定义显示或隐藏的工具。
美化工具
要包含默认样式,您可以
- 将位于
resources/sass
中的SCSS文件包含到您自己的样式表中 - 使用
{!! SearchTools::assets() !!}
包含预构建的CSS - 这会输出必要的链接标签以包含样式表
或者,您可以自己美化工具。
获取请求值
此包提供了一个简单的方法来获取过滤或搜索值,以便在您的后端逻辑中使用。
- 过滤器值:
SearchTools::filter()
- 搜索值:
SearchTools::search()
许可证
本软件包受GNU通用公共许可证v3版保护。有关更多信息,请参阅许可证文件。