0

我需要更改Magento的默認小數格式。我的意思是,當我將'1'保存到一個十進制字段時,最後變成'10000.0000',最後加上'.0000'。更改Magento十進制字段格式

我需要將其更改爲另一種格式,該格式使用','而不是'。'。分隔小數(和貨幣)號碼。

這是巴西標準,即使在更改商店語言後也沒有使用。這一變化應該主要反映在管理方面。

非常感謝!

==編輯== 我還沒有解決問題。我使用PT-BR(巴西葡萄牙語)作爲默認語言,但仍使用錯誤的十進制字符。 看來Magento在一些代碼中有一些非本地化的價格格式(我的意思是硬編碼)。例如:magento\js\prototype\validation.js在線426具有:

|| (!isNaN(parseNumber(v)) && /^\s*-?\d*(\,\d*)?\s*$/.test(v)); 

而是它需要是

|| (!isNaN(parseNumber(v)) && /^\s*-?\d*(\,\d*)?\s*$/.test(v)); 

裝配到PT-BR格式(或其它語言環境)。

我對不對?有人可以解決這個問題嗎?

如果你想在管理方面,以檢查這種變化

你去在管理左下下降

回答

0

我已經應用了以下更改文件magento\js\prototype\validation.js (line 426)

|| (!isNaN(parseNumber(v)) && /^\s*-?\d*(\,\d*)?\s*$/.test(v)); 

而且,通過將第一個if語句修改了文件lib/Varien/Data/Form/Element/Abstract.php

public function getEscapedValue($index=null) 
{ 
    $value = $this->getValue($index); 

    if(is_numeric($value)){ 
     $value= number_format($value, 3, ",", "."); 
    } 
    ... 

這種變化已經解決了這個問題至今。你有沒有看到任何副作用?

歡迎評論!謝謝!

0

,並選擇

Português (Portugal)/português (Portugal) 

只要你想它會告訴你貨幣。此外,如果你沒有安裝打包去

http://www.magentocommerce.com/translations/list/19

下載你的包,並將其添加到您的

區域設置文件夾,並從配置前端還

希望選擇這將確保幫你。

+0

正如我所說,已經有巴西葡萄牙語安裝在這個Magento實例中,但這還不夠。價格另一個小數字段必須是'x.abc'而不是'x,abc' - 感謝您的幫助,還有其他小費? :) – MatheusJardimB

+0

我剛剛檢查了我的本地設置,它對我有用。我可以添加屏幕截圖嗎?請清除您的緩存。或嘗試此解決方案http://www.magentocommerce.com/boards/viewthread/30474/ – liyakat

+0

我會看看,如果它工作,一個+1會來:D Tks – MatheusJardimB

0

更新版本的Magento基於Zend Framework貨幣區域設置格式,因此最好的方法是從Zend目錄更改language.xml,更多信息請見great article