【发布时间】:2014-07-17 14:03:58
【问题描述】:
我正在尝试从 QML 中的数据库中检索数据。下面的代码在 Qt5 中有效,但我无法从 QML 访问数据。我得到:“未定义”。谁能帮帮我?
db.cpp
dataB = QSqlDatabase::addDatabase("QPSQL");
dataB.setHostName("192...");
dataB.setDatabaseName("database");
dataB.setPort(123);
dataB.setUserName("user1");
dataB.setPassword("user1");
this->model = new QSqlQueryModel();
model->setQuery("SELECT status FROM telephone");
ui->tableView->setModel(model);//result is in the first image
QQuickView *view = new QQuickView();
QQmlContext *context = view->rootContext();
context->setContextProperty("mySQLmodel", model);
view->setSource(QUrl("main.qml"));
view->show();
main.qml
Rectangle {
width: 300
height: 300
ListView {
id: someListView
anchors
{
fill: parent
}
model: mySQLmodel
delegate: Label {
text:{ "1 " + mySQLmodel.status}
}
}}
【问题讨论】: