Я учу QxORM. Я клонировал исходный код и построил на Ubuntu. Я также могу запустить пример в test/qxBlogModelView
. Я изменил test_qml_view()
, чтобы заново извлечь все, когда я изменяю базу данных снаружи. (Я открываю файл базы данных, используя «DB Browwser for SQLite», затем редактирую строки):
void test_qml_view()
{
qx::IxModel * pModel = new qx::QxModel<author>();
// My adding code
pModel->setAutoUpdateDatabase(qx::IxModel::e_auto_update_database::e_auto_update_on_field_change);
QObject::connect(pModel, &qx::IxModel::dataChanged, [&pModel](){
qDebug() << "dataChanged";
pModel->qxFetchAll();
});
//
pModel->qxFetchAll();
QQuickView qmlView;
QString sQmlFile = "qml/main2.qml";
qmlView.rootContext()->setContextProperty("myModel", pModel);
qmlView.setSource(QUrl(sQmlFile));
qmlView.show();
qApp->exec();
}
Я хочу, чтобы представление (QML) автоматически обновлялось при изменении базы данных с помощью «DB Browwser for SQLite». Является ли это возможным? А какая настройка отсутствует? Большое спасибо!