...
'language' => 'pt-br',
'components' => [
'formatter' => [
'class' => 'yii\i18n\Formatter',
'dateFormat' => 'php:d/m/Y',
'datetimeFormat' => 'php:d/m/Y H:i:s',
'timeFormat' => 'php:H:i:s',
'decimalSeparator' => ',',
'thousandSeparator' => '.',
'currencyCode' => 'R$',
],
/*
* Antes de inserir os dados no banco, formatá-los para se tornarem compatíveis com determinados tipos de campos.
*/
'formatterDB' => [
'class' => 'yii\i18n\Formatter',
'dateFormat' => 'php:Y-m-d',
'datetimeFormat' => 'php:Y-m-d H:i:s',
'timeFormat' => 'php:H:i:s',
'decimalSeparator' => '.',
],
...
index.php
<?= GridView::widget([
'dataProvider' => $dataProvider,
'filterModel' => $searchModel,
'columns' => [
['class' => 'yii\grid\SerialColumn'],
'id',
'valor:currency',
'data:date',
// 'created_at:datetime',
// 'updated_at:datetime',
['class' => 'yii\grid\ActionColumn'],
],
]); ?>
alguma luz de como gravar isso certo e como no form na hora do update já vir formatado no nosso formato?
Só para complementar, meu problema por enquanto está na validação, pois assim que digito 1.587,69 ele já dispara o erro “Valor” deve ser um número.
Então preciso passar por esse erro tb.
--
YFB - Yii Framework Brasil
04/2011: Anexos de até 250kb foram autorizados pelos membros da lista. Use com moderação.
---
Você recebeu essa mensagem porque está inscrito no grupo "YFB - Yii Framework Brasil" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para yii-framework-br...@googlegroups.com.
Para ver essa discussão na Web, acesse https://groups.google.com/d/msgid/yii-framework-brasil/f5b5225b-f6ac-4594-98be-91e012813fab%40googlegroups.com.
Para mais opções, acesse https://groups.google.com/d/optout.
Para ver essa discussão na Web, acesse https://groups.google.com/d/msgid/yii-framework-brasil/CAF-qxagQcz7NKR9yQ%2BwbnQUsd28eODDaCcf6SwW6sxo2UPcU%3DQ%40mail.gmail.com.
<?php
namespace app\models;
use Yii;
use yii\db\ActiveRecord;
use app\components\behaviors\DbAttributesFilterBehavior;
class BaseModel extends ActiveRecord
{
public function behaviors()
{
return [
'class' => DbAttributesFilterBehavior::className(),
];
}
}
<?php
namespace app\models;
use Yii;
use app\models\BaseModel;
/**
* This is the model class for table "teste".
*
* @property integer $id
* @property double $value
* @property string $data
*/
class Teste extends BaseModel
{
/**
* @inheritdoc
*/
public static function tableName()
{
return 'teste';
}
/**
* @inheritdoc
*/
public function rules()
{
return [
[['value'], 'number'],
[['data'], 'safe'],
['data', 'date', 'format' => 'd/M/yyyy'],
];
}
/**
* @inheritdoc
*/
public function attributeLabels()
{
return [
'id' => 'ID',
'value' => 'Valor',
'data' => 'Data',
];
}
}
public function rules()
{
return [
[['value', 'data'], 'required'],
[['value', 'data'], 'trim'],
[['data'], 'string', 'max' => 10, 'min' => 10],
[['value'], 'number', 'numberPattern' => '/^(?:[1-9](?:[\d]{0,2}(?:\.[\d]{3})*|[\d]+)|0)(?:,[\d]{0,2})?$/'], //Aqui defini a expressão regular para aceitar 1.589,69
public function beforeSave($insert) {
if (parent::beforeSave($insert)) {
$this->value = str_replace('.', '', $this->value);
$this->value = str_replace(',', '.', $this->value);
return true;
} else {
return false;
}
}
--
YFB - Yii Framework Brasil
04/2011: Anexos de até 250kb foram autorizados pelos membros da lista. Use com moderação.
---
Você recebeu essa mensagem porque está inscrito no grupo "YFB - Yii Framework Brasil" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para yii-framework-br...@googlegroups.com.
Para ver essa discussão na Web, acesse https://groups.google.com/d/msgid/yii-framework-brasil/e380a0e7-ad9f-47a9-9bab-bab57c451e39%40googlegroups.com.
É eu vi lá.
Agora está faltando conseguir ajustar a data e achar de novo como formatar no fomulário na hora do update.
--
YFB - Yii Framework Brasil
04/2011: Anexos de até 250kb foram autorizados pelos membros da lista. Use com moderação.
---
Você recebeu essa mensagem porque está inscrito no grupo "YFB - Yii Framework Brasil" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para yii-framework-br...@googlegroups.com.
Para ver essa discussão na Web, acesse https://groups.google.com/d/msgid/yii-framework-brasil/4aa778c8-a485-46f2-8742-3a4b03491a80%40googlegroups.com.
'components' => [
'formatter' => [
'class' => 'yii\i18n\Formatter',
'dateFormat' => 'php:d/m/Y',
'datetimeFormat' => 'php:d/m/Y H:i:s',
'timeFormat' => 'php:H:i:s',
'decimalSeparator' => ',',
'thousandSeparator' => '.',
'currencyCode' => '',
],
yii\i18n\Formatter. mas não é o que acontece.
--
YFB - Yii Framework Brasil
04/2011: Anexos de até 250kb foram autorizados pelos membros da lista. Use com moderação.
---
Você recebeu essa mensagem porque está inscrito no grupo "YFB - Yii Framework Brasil" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para yii-framework-br...@googlegroups.com.
Para ver essa discussão na Web, acesse https://groups.google.com/d/msgid/yii-framework-brasil/3d20bd22-3c83-4d02-a69a-88837dade033%40googlegroups.com.
Para ver essa discussão na Web, acesse https://groups.google.com/d/msgid/yii-framework-brasil/CAPLOwqK9tp3yGq_DT2EoDV47O8oTm%2Br8jpwgNwyL0rSVrnb9Zw%40mail.gmail.com.
--
YFB - Yii Framework Brasil
04/2011: Anexos de até 250kb foram autorizados pelos membros da lista. Use com moderação.
---
Você recebeu essa mensagem porque está inscrito no grupo "YFB - Yii Framework Brasil" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para yii-framework-br...@googlegroups.com.
Para ver essa discussão na Web, acesse https://groups.google.com/d/msgid/yii-framework-brasil/a53ca61d-c0e7-4456-a38a-c648eaa81b8c%40googlegroups.com.
Para ver essa discussão na Web, acesse https://groups.google.com/d/msgid/yii-framework-brasil/569E841E.6020804%40gmail.com.