跳到内容

EasyAdmin 百分比字段

编辑此页

此字段用于表示存储百分比值的属性。

表单页面(编辑和新建)中,它看起来像这样

Default style of EasyAdmin percent field

基本信息

  • PHP 类: EasyCorp\Bundle\EasyAdminBundle\Field\PercentField
  • Doctrine DBAL 类型 用于存储此值: decimal, floatinteger
  • Symfony 表单类型 用于渲染字段: PercentType
  • 渲染为:

    1
    <input type="text">

选项

setNumDecimals

默认情况下,百分比“按原样”显示,不添加或删除任何小数位。如果您想使用特定的小数位数格式化值,请使用此选项

1
2
// this would format 3 as 3.00 and 5.123 as 5.12
yield PercentField::new('...')->setNumDecimals(2);

setRoundingMode

默认情况下,当必须舍入某个值以减少小数位数时,该字段使用 PHP \NumberFormatter::ROUND_HALFUP 策略。使用此选项可以更改舍入策略,并将其参数传递为 PHP NumberFormatter 类的任何 ROUND_* 常量

1
yield PercentField::new('...')->setRoundingMode(\NumberFormatter::ROUND_CEILING);

setStoredAsFractional

默认情况下,百分比存储为从 01 的小数值(例如,15% 存储为 0.15,67.84% 存储为 0.6784)。如果您希望将百分比存储为从 0100 的整数值,请将此选项设置为 false

// 如果您的百分比可以有小数,您必须将它们存储为小数值 yield PercentField::new('...')->setStoredAsFractional(false);

无论您如何存储这些值,EasyAdmin 始终将百分比显示为从 0100 的值(例如,即使您在数据库中将 15% 存储为 0.15,表单和列表也将始终显示 15%)。

setSymbol

默认情况下,值会在它们旁边显示一个 %,以使其更易于理解。使用此选项并传递 false 以不显示任何符号,或传递任何其他字符串以将其用作符号

1
2
3
4
5
// this won't display any symbol
yield PercentField::new('...')->setSymbol(false);

// this will display the "per mille" (per thousand) symbol next to values
yield PercentField::new('...')->setSymbol('‰');
本作品,包括代码示例,根据 Creative Commons BY-SA 3.0 许可获得许可。
目录
    版本