268 """<p>Shows some information about Django.</p>""" |
268 """<p>Shows some information about Django.</p>""" |
269 )) |
269 )) |
270 self.aboutDjangoAct.triggered.connect(self.__djangoInfo) |
270 self.aboutDjangoAct.triggered.connect(self.__djangoInfo) |
271 self.actions.append(self.aboutDjangoAct) |
271 self.actions.append(self.aboutDjangoAct) |
272 |
272 |
|
273 ############################## |
|
274 ## check action below ## |
|
275 ############################## |
|
276 |
|
277 self.checkAct = E5Action( |
|
278 self.tr('Check Project'), |
|
279 self.tr('Check Project'), |
|
280 0, 0, |
|
281 self, 'django_check_project') |
|
282 self.checkAct.setStatusTip(self.tr( |
|
283 'Inspects the Django project for common problems')) |
|
284 self.checkAct.setWhatsThis(self.tr( |
|
285 """<b>Check Project</b>""" |
|
286 """<p>This inspects the Django project for common problems.</p>""" |
|
287 )) |
|
288 self.checkAct.triggered.connect(self.__performCheck) |
|
289 self.actions.append(self.checkAct) |
|
290 |
273 self.__initDatabaseActions() |
291 self.__initDatabaseActions() |
274 self.__initDatabaseSqlActions() |
292 self.__initDatabaseSqlActions() |
275 self.__initMigrationActions() |
293 self.__initMigrationActions() |
276 self.__initToolsActions() |
294 self.__initToolsActions() |
277 self.__initTestingActions() |
295 self.__initTestingActions() |
813 menu.addAction(self.runBrowserAct) |
831 menu.addAction(self.runBrowserAct) |
814 menu.addSeparator() |
832 menu.addSeparator() |
815 menu.addAction(self.startProjectAct) |
833 menu.addAction(self.startProjectAct) |
816 menu.addAction(self.startGlobalApplicationAct) |
834 menu.addAction(self.startGlobalApplicationAct) |
817 menu.addAction(self.startLocalApplicationAct) |
835 menu.addAction(self.startLocalApplicationAct) |
|
836 menu.addSeparator() |
|
837 menu.addAction(self.checkAct) |
818 menu.addSeparator() |
838 menu.addSeparator() |
819 menu.addMenu(self.__initDatabaseMenu()) |
839 menu.addMenu(self.__initDatabaseMenu()) |
820 menu.addMenu(self.__initMigrationsMenu()) |
840 menu.addMenu(self.__initMigrationsMenu()) |
821 menu.addSeparator() |
841 menu.addSeparator() |
822 menu.addMenu(self.__initToolsMenu()) |
842 menu.addMenu(self.__initToolsMenu()) |
3217 None, |
3237 None, |
3218 self.tr('Process Generation Error'), |
3238 self.tr('Process Generation Error'), |
3219 self.tr('The translations editor process ({0}) could' |
3239 self.tr('The translations editor process ({0}) could' |
3220 ' not be started.') |
3240 ' not be started.') |
3221 .format(os.path.basename(editor))) |
3241 .format(os.path.basename(editor))) |
|
3242 |
|
3243 ################################################################## |
|
3244 ## slots below implement check functions |
|
3245 ################################################################## |
|
3246 |
|
3247 def __performCheck(self): |
|
3248 """ |
|
3249 Private slot to inspect the project for common problems. |
|
3250 """ |
|
3251 try: |
|
3252 path = self.__sitePath() |
|
3253 except DjangoNoSiteSelectedException: |
|
3254 return |
|
3255 |
|
3256 from .DjangoCheckOptionsDialog import DjangoCheckOptionsDialog |
|
3257 dlg = DjangoCheckOptionsDialog( |
|
3258 self.__getPythonExecutable(), path, self.getRecentApplications(), |
|
3259 self.__plugin.getPreferences("CheckDeployMode"), |
|
3260 ) |
|
3261 if dlg.exec_() == QDialog.Accepted: |
|
3262 deploy, tags, appsStr, settingsFile = dlg.getData() |
|
3263 self.__plugin.setPreferences("CheckDeployMode", deploy) |
|
3264 if appsStr != "": |
|
3265 self.setMostRecentApplication(appsStr) |
|
3266 apps = appsStr.split() |
|
3267 |
|
3268 args = [] |
|
3269 args.append(self.__getPythonExecutable()) |
|
3270 args.append("manage.py") |
|
3271 args.append("check") |
|
3272 for tag in tags: |
|
3273 args.append("--tag") |
|
3274 args.append(tag) |
|
3275 if deploy: |
|
3276 args.append("--deploy") |
|
3277 if settingsFile: |
|
3278 args.append("--settings={0}".format(settingsFile)) |
|
3279 args += apps |
|
3280 |
|
3281 dia = DjangoDialog(self.tr("Check Project")) |
|
3282 res = dia.startProcess(args, path, mergedOutput=True) |
|
3283 if res: |
|
3284 dia.exec_() |