atk14/localized-decimal-field

限制数字位数和小数位数的字段

v1.0.2 2023-11-11 10:33 UTC

This package is auto-updated.

Last update: 2024-09-11 12:39:52 UTC


README

Build Status

限制数字位数和小数位数的字段。

此字段接受并渲染本地化数字,例如 "1 003,345"。

在 ATK14 应用程序中的使用

在表单中

<?php
// file: app/forms/products/create_new_form.php
class CreateNewForm extends ApplicationForm {

  function set_up(){
    // ...
    $this->add_field("price", new LocalizedDecimalField([
      "label" => "Price",
      "max_digits" => 7,
      "decimal_places" => 2,
      "min_value" => 0,
    ]));
    // ...
  }
}

此字段的清理值可以是:1.23, 1.2, 4.0... (浮点数)

可以使用选项 "format_number" => true 来获取 LocalizedDecimalField 的字符串值

$this->add_field("weight", new LocalizedDecimalField([
   "label" => "Weight in kg",
   "max_digits" => 6,
   "decimal_places" => 3,
   "format_number" => true,
]));

此类字段的清理值可以是:"1.230", "1.200", "4.000"... (字符串)

安装

只需使用 Composer

cd path/to/your/atk14/project/
composer require atk14/localized-decimal-field

可选地,您可以将 LocalizedDecimalField 和 DecimalField 文件符号链接到您的项目中

ln -s ../../vendor/atk14/localized-decimal-field/src/app/fields/localized_decimal_field.php app/fields/localized_decimal_field.php
ln -s ../../vendor/atk14/decimal-field/src/app/fields/decimal_field.php app/fields/decimal_field.php

测试

composer update --dev
cd test
../vendor/bin/run_unit_tests

许可证

LocalizedDecimalField 是免费软件,根据 MIT 许可证的条款分发 https://open-source.org.cn/licenses/mit-license