zofe/search-module

用于 Laravel rapyd-livewire 应用程序的搜索模块

0.0.3 2023-03-06 14:03 UTC

This package is auto-updated.

Last update: 2024-08-25 18:47:20 UTC


README

这是一个 Laravel 应用程序(>= 8)的演示模块。

搜索模块旨在将项目中“全局搜索”的逻辑集中管理。

安装与配置

默认情况下,此“字段”搜索可以在配置文件中定义的模型列表中进行,对于每个模型,您需要指定

  • 查询范围
  • 路由(链接到结果详情)
  • 查询限制
  • 视图(结果项的视图,用于自定义项目外观)
    'models' => [
        [
            'class' => \App\Models\User::class,
            'scope' => 'ssearch',
            'route' => 'auth.users.view',
            'limit' => 5,
            'view'  => 'search::item',
        ],
    ]

布局

注意,此模块将安装/使用布局模块,您可能需要进行以下操作

cd app/Modules/Layout/

npm i
npm run dev

这将编译 scss 并将 css 资产复制到您的公共项目文件夹

用法

此命令将在您的 /app/Modules/ 文件夹中创建一个名为 "Search" 的文件夹。

此组件:/app/Modules/Search/Components/SearchNavbar.php

包含项目中“全局搜索”的逻辑。搜索用户,以及其他已安装模块的主要模型。

自定义模块

为了自定义模块代码,我们建议在 GitHub 上分叉原始包仓库并进行更改。这样,您可以维护一个用于更改的独立分支,同时也能保持与包的最新版本同步。

要在 Laravel 应用程序中安装您的分叉版本,您可以在 Laravel 应用程序的 composer.json 文件中使用“vcs”包类型引用您的分叉仓库。

"repositories": [
{
"type": "vcs",
"url": "https://github.com/<your-github-username>/<package-name>"
}
],

<your-github-username> 替换为您的 GitHub 用户名,将 <package-name> 替换为您的分叉包仓库的名称。

将分叉仓库添加到 composer.json 后,您可以通过与要求原始包相同的方式要求您的自定义包

composer require <your-github-username>/<package-name>:dev-<your-branch-name>

<your-github-username><package-name><your-branch-name> 替换为您的分叉仓库和分支的适当值。

使用这种方法,您可以在保持代码与包的最新版本同步的同时轻松自定义模块代码。

我们鼓励开发者做出可能对更广泛社区有用的更改,并通过拉取请求向原始包仓库贡献。这可以帮助改进包,并确保您的更改与包的最新版本集成。