在处理DAO和Tornadofx时将数据绑定到视图模型

时间:2018-07-16 09:16:05

标签: data-binding kotlin dao tornadofx kotlin-exposed

我正在使用JetBrains / Exposed进行数据库操作。我能够利用DAO方法在TableView上显示数据库中的数据。 DSL方法非常具有挑战性。

成功显示数据后,数据绑定消失了。我的人物课堂看起来像这样

class Person(id: EntityID<Int>) : IntEntity(id) {
    companion object : IntEntityClass<Person>(Persons)

    var name     by Persons.name
    var title by Persons.title
}

我的视图模型如下

class PersonModel(person: Person?) : ViewModel() {

   val name =  bind {person?.observable(Person::name)}
   val title = bind {person?.observable(Person::title)}
}

每次我要对所获得的模型进行更改

java.lang.IllegalStateException: No transaction in context.

我知道这是因为在事务上下文中使用Person来执行Db查询。

鉴于我正在使用JetBrains / Expose的DAO API,我想知道如何将数据绑定到视图模型。

谢谢。

0 个答案:

没有答案