pdmfc/nova-inline-text

Laravel Nova 行内文本字段。

v1.2.1 2020-12-28 19:11 UTC

This package is auto-updated.

Last update: 2024-09-07 00:27:34 UTC


README

Version Total Downloads License

此包允许您在资源页面上直接编辑文本字段。

安装

composer require pdmfc/nova-inline-text

使用方法

use Pdmfc\NovaFields\InlineText;

//...

public function fields()
{
    return [
        InlineText::make('Name'),
    ];
}

使其可编辑

默认情况下,此字段的行为类似于常规文本字段。要在索引页面上编辑它,请使用 inlineOnIndex() 方法

public function fields()
{
    return [
        InlineText::make('Name')
            ->inlineOnIndex(),
    ];
}

Basic usage

此方法还接受一个闭包,该闭包包含当前请求,如果您想使其动态可编辑

public function fields()
{
    return [
        InlineText::make('Name')
            ->inlineOnIndex(function (NovaRequest $request) {
                return $request->user()->isAdmin();
            }),
    ];
}

更新字段值

默认的保存值的触发器是通过按 Enter 键(keyup.enter)。如果您希望使用不同的事件触发器来更新值,可以使用接受对应于 JavaScript 事件的参数的 saveOn() 方法

public function fields()
{
    return [
        InlineText::make('Name')
            ->inlineOnIndex()
            ->saveOn('blur'),
    ];
}

键盘事件修饰符

您还可以指定键盘事件修饰符

public function fields()
{
    return [
        InlineText::make('Name')
            ->inlineOnIndex()
            ->saveOn('keyup.shift'),
    ];
}

刷新资源表

当保存当前字段值时,它不会刷新表。如果需要此功能,请使用 refreshOnSaving() 方法

public function fields()
{
    return [
        InlineText::make('Name')
            ->inlineOnIndex()
            ->refreshOnSaving(),
    ];
}

⚠️ 注意事项

  • 在更新字段时,请确保将 sometimes 验证规则添加到其他必需字段中

    Text::make('Email')
        ->rules('required', 'email')
        ->updateRules('sometimes') // Add these method call and validation rule to the fields that are required

如何贡献

  • 克隆存储库
  • 在 Laravel Nova 应用程序的 composer.json 中添加以下内容
{
    //...

    "require" {
        "pdmfc/nova-inline-text: "*"
    },

    //...
    "repositories": [
        {
            "type": "path",
            "url": "../path_to_your_package_folder"
        }
    ],
}
  • 运行 composer update pdmfc/nova-inline-text

您现在可以开始贡献了!