1

在我的数据库中,我有一个值为 0 和 1 的 Actif 列(假和真)

我尝试使用列。我的 db 值为 0 和 1 的布尔值......但它不起作用。

{
    xtype: 'booleancolumn',
    dataIndex: 'Actif',
    text: 'MyBooleanColumn',
    falseText: 'Non',
    trueText: 'Oui'
}

请帮帮我 :)

我的模特

Ext.define('ModuleGestion.model.UtilisateursApplicatifs', {
extend: 'Ext.data.Model',

fields: [
    {
        name: 'Nom'
    },
    {
        name: 'Prenom'
    },
    {
        name: 'Identification'
    },
    {
        name: 'MotDePasse'
    },
    {
        name: 'IUtilisateurApplicatif'
    },
    {
        name: 'FonctionRepertoire'
    },
    {
        name: 'FonctionAnimation'
    },
    {
        name: 'FonctionFormation'
    },
    {
        name: 'FonctionAdministration'
    },
    {
        name: 'Actif'
    }
]});

解决方案是删除返回值的双引号:

$resultat = json_encode($resultat ); 
$resultat = str_replace('"Actif":"0"', '"Actif":0', $resultat); 
$resultat = str_replace('"Actif":"1"', '"Actif":1', $resultat);
4

1 回答 1

0

我有类似的情况,对于 db 中的 0 和 1,我使用的不是布尔列。从 db 我发送 0 和 1,在我的列渲染器中我检查这个并进行一些转换。检查我的示例(这里是 actioncolumn - 它用于在单元格中显示图标)。这是决定你的情况的一种方法。我的观点:

xtype: 'actioncolumn',
width: 55,
align: 'center',
dataIndex: 'Actif',
menuDisabled: 'true'
text: '',
sortable: false,
fixed: 'true',
renderer: function (value, metadata, record) {
    if (value == '0') {
        //some code
    }
    else {
        //some code
    }
},
getTip: function (value, metadata, record) {
    if (value == '0') {
        return 'here 0';
    } else {
        return 'here 1';
    }
}

你不需要改变模型。

在您的示例中,我认为您应该在模型中添加您的字段类型。

这是一个例子

  { name: 'Actif', type: 'boolean' }
于 2013-06-03T06:13:05.700 回答