QSqlQueryModel是将表的字段绑定到QListView的正确方法吗?

时间:2013-08-05 23:59:36

标签: qt

核心问题:有没有办法指定QListView显示哪个字段?

我有一个包含两个字段的数据库表: id keyword

我想在QListView中显示关键字,但获得id值,因为这是表格中的第一个字段。我最终使用QSqlQueryModel并且它有效,但我想知道这是否是标准的做法。

用户将能够向db添加其他关键字,因此为了显示新数据,我需要执行新查询。那可能有些蠢。我尝试切换到QTableViewQSQLTableModel,但我不需要该功能。错误的决定?

我正在设置QSqlQueryModel > QListView连接,如下所示。

 model = new QSqlQueryModel(this);
 model->setQuery("SELECT keyword FROM keywords",db);
 keywordListView->setModel(model);

1 个答案:

答案 0 :(得分:3)

您可以使用QSqlTableModel::fieldIndex获取该字段的列索引,并将其设置为要使用QListView::setModelColumn的视图显示的字段。