Cakephp sql 十进制输入形式
Cakephp sql decimal input form
我用的是cakephp 2.6.4。和 sql srv 2012。
我需要以 decimal(4,2) -> 分隔符前 4 位和分隔符后 2 位格式保存十进制数。
在 sql 服务器中我有数据类型 decimal(4,2) 并且在模型中我有验证 'rule' => array('decimal',2).
当我尝试保存例如 4213 时,12 它报告消息需要将数字四舍五入为 4213 或 4214
我尝试使用点 (.) 作为分隔符,但不起作用
当我在 sql srv float 中设置数据类型时,我可以保存,但不能使用小数,
有什么帮助吗?
发送
接下来我尝试在 sql srv 中使用 numeric(4,2),但与 decimal(4,2)
相同
我的验证数组是:'coordinate_x' => array(
'numeric' => 数组(
'rule' => 数组('decimal',2),
-其他所有内容都已注释
- 我设法得到 SQL 错误:错误:SQLSTATE[42000]: [Microsoft][SQL Server Native Client 11.0][SQL Server]将数据类型 varchar 转换为数字时出错。我删除了该字段的验证规则。似乎 cakephp 中的十进制值等于字符。但是当我回滚验证规则时,我得到错误来舍入一个数字,例如从 1234,12 到 1234 或 1235
$this->Number->format();
可以用来改变数字的格式。
示例:
$this->Number->format(floor($session->read('max_price')),
array('escape' => false,
'places' => 0,
'thousands' => ','
));
Place 属性用于设置十进制值。
已解决 HTML 要求:
<input type="number" step="0.01">
我用的是cakephp 2.6.4。和 sql srv 2012。 我需要以 decimal(4,2) -> 分隔符前 4 位和分隔符后 2 位格式保存十进制数。
在 sql 服务器中我有数据类型 decimal(4,2) 并且在模型中我有验证 'rule' => array('decimal',2).
当我尝试保存例如 4213 时,12 它报告消息需要将数字四舍五入为 4213 或 4214 我尝试使用点 (.) 作为分隔符,但不起作用
当我在 sql srv float 中设置数据类型时,我可以保存,但不能使用小数,
有什么帮助吗? 发送
接下来我尝试在 sql srv 中使用 numeric(4,2),但与 decimal(4,2)
相同
我的验证数组是:'coordinate_x' => array( 'numeric' => 数组( 'rule' => 数组('decimal',2),
-其他所有内容都已注释
- 我设法得到 SQL 错误:错误:SQLSTATE[42000]: [Microsoft][SQL Server Native Client 11.0][SQL Server]将数据类型 varchar 转换为数字时出错。我删除了该字段的验证规则。似乎 cakephp 中的十进制值等于字符。但是当我回滚验证规则时,我得到错误来舍入一个数字,例如从 1234,12 到 1234 或 1235
$this->Number->format();
可以用来改变数字的格式。
示例:
$this->Number->format(floor($session->read('max_price')),
array('escape' => false,
'places' => 0,
'thousands' => ','
));
Place 属性用于设置十进制值。
已解决 HTML 要求:
<input type="number" step="0.01">