2011-09-22 76 views
0

价格是浮动的值,我想喜欢的1.000,00代替1000.00如何值在编辑字段格式在CakePHP中

我知道我可以使用一个afterFind回调更改值显示,但我将需要原始的价值来做一些数学。

是否有任何回调,如cakephp中的symfony数据转换或我是否需要使用回调来创建具有格式化值的第二个字段。

还有其他的选择吗?

echo $this->Form->input('price'); // Price is a float 

在FormHelper的文档和API中,我找不到任何关于此的信息。

+0

cakephp有一个函数,显示浮动货币,但它不会改变它回来...我sugest,你管理输入为浮动,或者你需要做一个函数,以确定人们使用正确的格式,我之前有过这个问题,所以我将这个数字限制为1234,56或1234,并在控制器中做一个字符串替换,for。所以这将是一个浮动,并在索引中我使用蛋糕货币格式来显示Bs。 1.234,56或Bs。 1.234 – api55

回答

0

我推荐使用一种行为来“转换”数据库。 那里有一吨。 “数字”,“十进制”等应该是将其命名为

如果谷歌的这些行为你发现某事像 http://float-dot-fixable-behavior.googlecode.com/svn/trunk/float_dot_fixable.php

它可以很容易地增加(双向):

  • 从db:。到,
  • to db:,to。
+0

事情是:我不能只是改变。到,因为我需要用数值做一些数学运算。说一个购物车,价格*数量'。如果在我改变的行为中。到时,我需要在计算总价格时将其更改回来。我想我的最佳拍摄是有两个字段用于显示和一个用于计算? – Cesar

+0

你总是可以在这样的行为中做同样的事情并将它存储在另一个数组键中。我猜你在这里混合的是模型数据和演示数据。你应该在视图或控制器中做这些事情。为此使用助手并将其输出到购物车视图中。在此之前没有必要在其他地方转换它。 – mark