bool ModelGenerator::generate(bool userModel) const { QStringList files; if (!TableSchema(tableName).exists()) { qCritical("table not found, %s", qPrintable(tableName)); return false; } // Generates models files << generateSqlObject(); if (userModel) { if (fieldList.count() == 2) { files << genUserModel(fieldList.value(0), fieldList.value(1)); } else if (fieldList.isEmpty()) { files << genUserModel(); } else { qCritical("invalid parameters"); return false; } } else { files << genModel(); } // Generates a project file ProjectFileGenerator progen(dstDir.filePath("models.pro")); return progen.add(files); }
bool ViewGenerator::generate() const { QStringList files; // Reserved word check if (excludedDirName()->contains(dstDir.dirName())) { qCritical("Reserved word error. Please use another word. View name: %s", qPrintable(dstDir.dirName())); return false; } mkpath(dstDir); if (!TableSchema(tableName).exists()) { qCritical("table not found, %s", qPrintable(tableName)); return false; } // Generates view files files << generateViews(); // Generates a project file QDir dir(QDir::cleanPath(dstDir.filePath(".."))); ProjectFileGenerator progen(dir.filePath("views.pro")); return progen.generate(QStringList(), VIEWS_PROJECT); }