qsqlquerymodel与tr(),该如何处理

qsqlquerymodel与tr()
我想把取回来的数据根据内容显示为不同的内容,例如1则同意,2则不同意。
于是我重写了data()函数,部分如下:
QVariant MySqlQueryModel::data(const QModelIndex &index, int role) const
{
    QVariant value = QSqlQueryModel::data(index, role);
    if(role == Qt::DisplayRole){
        switch(value.toInt())
            {
            case 0:
                        return tr("disagree");
            case 1:
                        return tr("agree");
            }
    }
}
我在ts文件里对"disagree"、"agree"进行了翻译,并发布。
但是在qtableview里显示的还是disagree以及agree,不是不同意、同意。

------解决方案--------------------
自力更生的我