atk14/range-field

RangeField 是用于在 ATK14 应用中输入数字范围的表单字段

v0.2.1 2023-04-10 20:28 UTC

This package is auto-updated.

Last update: 2024-09-10 23:27:12 UTC


README

RangeField 是一个用于输入指定最小和最大值之间两个数字值的字段。

在电商网站中,这是一个有用的字段,例如,用于设置产品选择的价格范围。

用法

<?php
// file: app/forms/products/index_form.php
class IndexForm extends ApplicatonForm {

  function set_up(){
    $this->add_field("search", new CharField([
      "label" => "Search",
      "required" => false,
    ]));

    $this->add_field("price", new RangeField([
      "label" => "Price range",
      "min_value" => 1,
      "max_value" => 100000,
      "required" => false,
    ]));
  }
}

<?php
// file: app/controllers/products_controller.php
class ProductsController extends ApplicationController {

  function index(){
    $d = $this->form->validate($this->params);

    $min = $d["price"]["min"];
    $max = $d["price"]["max"];

    // ..
  }
}

安装

只需使用 Composer

cd path/to/your/atk14/project/
composer require atk14/range-field

可选地,您可以创建 RangeField 文件的符号链接到您的项目中

ln -s ../../vendor/atk14/range-field/src/app/fields/range_field.php app/fields/range_field.php
ln -s ../../vendor/atk14/range-field/src/app/widgets/range_input.php app/widgets/range_input.php

测试

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

许可协议

RangeField 是在 MIT 许可证下免费软件,具体许可协议请参见 此处