Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision 59bf3900

Von Christian Ehringfeld vor fast 9 Jahren hinzugefügt

  • ID 59bf39005367acf23de7e29eac082527a53a95ea
  • Vorgänger 992116ed
  • Nachfolger 8306a974

bugfix

Unterschiede anzeigen:

src/querybuilder.cpp
const QSharedPointer<Entity> &e,
QHash<QString, QMetaProperty> &usedProperties) const {
auto properties = e.data()->getMetaProperties();
auto i = QMutableHashIterator<QString, QMetaProperty>(properties);
QMutableHashIterator<QString, QMetaProperty> i(properties);
while (i.hasNext()) {
i.next();
if (usedProperties.contains(i.key()) && i.key() != e.data()->getPrimaryKey()) {
properties.remove(i.key());
} else {
usedProperties.insert(i.key(), i.value());
}
i.next();
}
return properties;
}
......
auto relations = e.data()->getRelations();
auto i = QMutableHashIterator<QString, Relation>(relations);
while (i.hasNext()) {
i.next();
if (usedRelations.contains(i.key())) {
relations.remove(i.key());
} else {
usedRelations.insert(i.key(), i.value());
}
i.next();
}
return relations;
}
......
auto usedProperties = QHash<QString, QMetaProperty>();
auto usedRelations = QHash<QString, Relation>();
QSharedPointer<Entity> e;
for (int var = classes.size()-1; var >= 0; --var) {
for (int var = classes.size() - 1; var >= 0; --var) {
auto metaObj = classes.at(var);
e = QSharedPointer<Entity>(EntityInstanceFactory::createInstance(
metaObj->className()));
metaObj));
if (e) {
list.append(QueryBuilder::ClassAttributes(e.data()->getTablename(),
this->saveAttributes(entity, this->processProperties(e, usedProperties),

Auch abrufbar als: Unified diff