Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision 6d91d381

Von Christian Ehringfeld vor fast 9 Jahren hinzugefügt

  • ID 6d91d3817e9a022261ec6fb5935c055967ca91ac
  • Vorgänger f5087482
  • Nachfolger ac8aede7

some bug fixes, caching works

Unterschiede anzeigen:

src/entitymanager.h
QList<QHash<QString, QVariant> > findAll(const QSharedPointer<Entity> &e);
void resolveRelations(const QSharedPointer<Entity> &entity,
const QHash<QString, QVariant> &map, const bool refresh = false);
QHash<QString, QVariant> findByPk(const QSharedPointer<Entity> &e);
QHash<QString, QVariant> findByPk(qint64 id, const QSharedPointer<Entity> &e);
QSharedPointer<Entity> convert(const QHash<QString, QVariant> &map,
const char *classname, const bool refresh = false);
QList<QSharedPointer<Entity>> convert(QList<QHash<QString, QVariant> > maps,
......
}
template<class T> QList<QSharedPointer<Entity>> findAll() {
QSharedPointer<Entity> ptr = QSharedPointer<Entity>(EntityInstanceFactory::createInstance<T>());
if (!ptr.isNull()) {
QSharedPointer<Entity> ptr = QSharedPointer<Entity>
(EntityInstanceFactory::createInstance<T>());
if (ptr) {
auto maps = this->findAll(ptr);
const char *className = ptr.data()->getClassname();
return this->convert(maps, className);

Auch abrufbar als: Unified diff