Qt模型/视图SQL推荐

Qt模型/视图SQL推荐,sql,qt,model-view,Sql,Qt,Model View,我刚刚开始使用Qt的模型/视图框架,我试图找到一个似乎很常见而且可能非常简单的问题的最佳解决方案 我有一个Employee表(Id、LastName、FirstName、Salary),我想显示同一个表的两个不同视图: -第一个视图:只有一个QListView,包括名字和姓氏的串联。此视图不应可编辑,但一次只能选择一名员工。 -第二个视图:使用3xQLineEdit作为姓名、名字和薪水。这三个字段用于更改数据库的内容 通过使用QSqlQueryModel,我成功地在QListView中正确显示了

我刚刚开始使用Qt的模型/视图框架,我试图找到一个似乎很常见而且可能非常简单的问题的最佳解决方案

我有一个
Employee
(Id、LastName、FirstName、Salary)
,我想显示同一个表的两个不同视图: -第一个视图:只有一个
QListView
,包括名字和姓氏的串联。此视图不应可编辑,但一次只能选择一名员工。 -第二个视图:使用3x
QLineEdit
作为姓名、名字和薪水。这三个字段用于更改数据库的内容

通过使用
QSqlQueryModel
,我成功地在
QListView
中正确显示了
[Name,FirstName]

QSqlQueryModel* modelSQL = new QSqlQueryModel(this);
modelQuery->setQuery("SELECT CONCAT(LastName, ', ', FirstName) AS FullName, Id FROM Employee ORDER BY FullName ASC;");
empListView = new QListView;
empListView->setModel(modelSQL);
我设法使用
QSqlTableModel
QDataWidgetMapper
QLineEdit
中显示所有三个字段

QSqlTableModel *model = new QSqlTableModel(this, this->db);
model->setTable("Employee");
model->select();

mapper = new QDataWidgetMapper(this);
mapper->setModel(modelSQL);
mapper->addMapping(this->lastNameEdit, 2);
mapper->addMapping(this->firstNameEdit, 3);
mapper->addMapping(this->salaryEdit, 4);
我的问题是,从
modelQuery
更新模型的最佳策略是什么。我的意思是,当我点击
QListView
并选择第三名员工时;如何相应地同步其他三个字段

非常感谢