Могу ли я установить числовой формат по умолчанию для конкретного столбца таблицы в CakePHP? - PullRequest
0 голосов
/ 20 октября 2018

Я только начал возиться с CakePHP.

У меня есть таблица metrics и столбец data_multiplier.

Я испек весь код для этой таблицы.

Сгенерированный шаблон производит что-то вроде этого:

<td><?= $this->Number->format($metric->data_multiplier) ?></td>

Числовой формат по умолчанию имеет 3 десятичных знака.Мне нужно 6 знаков после запятой, поэтому мне пришлось добавить параметр к вызову метода format следующим образом:

<td><?= $this->Number->format($metric->data_multiplier, ['places' => 6]) ?></td>

Должен ли я делать это в каждом представлении, которое использует эту таблицу и столбец, илиесть какой-то способ определить параметры формата по умолчанию для определенного столбца в определенной строке?

1 Ответ

0 голосов
/ 20 октября 2018

Вы можете создать своего собственного помощника.

<?php

App::uses('Helper', 'View', 'Number');
class AppHelper extends Helper
{        
        public function my_numberformat($val)
        {
            return $this->Number->format($val, ['places' => 6])
        }
    }
}

Тогда в вашем шаблоне вы можете сделать:

<td><?= $this->App->my_numberformat($metric->data_multiplier) ?></td>

И не забудьте сослаться на помощника на ваш контроллер:

например

public $helpers = array('App');
...