File tree 1 file changed +17
-6
lines changed
1 file changed +17
-6
lines changed Original file line number Diff line number Diff line change @@ -264,6 +264,22 @@ def setup_schedule(self):
264
264
def all_as_schedule (self ):
265
265
debug ('DatabaseScheduler: Fetching database schedule' )
266
266
s = {}
267
+ for model in self .enabled_models ():
268
+ try :
269
+ s [model .name ] = self .Entry (model , app = self .app )
270
+ except ValueError :
271
+ pass
272
+ return s
273
+
274
+ def enabled_models (self ):
275
+ """Return list of enabled periodic tasks.
276
+
277
+ Allows overriding how the list of periodic tasks is fetched without
278
+ duplicating the filtering/querying logic.
279
+ """
280
+ return list (self .enabled_models_qs ())
281
+
282
+ def enabled_models_qs (self ):
267
283
next_schedule_sync = now () + datetime .timedelta (
268
284
seconds = SCHEDULE_SYNC_MAX_INTERVAL
269
285
)
@@ -278,12 +294,7 @@ def all_as_schedule(self):
278
294
exclude_query = exclude_clock_tasks_query | exclude_cron_tasks_query
279
295
280
296
# Fetch only the tasks we need to consider
281
- for model in self .Model .objects .enabled ().exclude (exclude_query ):
282
- try :
283
- s [model .name ] = self .Entry (model , app = self .app )
284
- except ValueError :
285
- pass
286
- return s
297
+ return self .Model .objects .enabled ().exclude (exclude_query )
287
298
288
299
def _get_crontab_exclude_query (self ):
289
300
"""
You can’t perform that action at this time.
0 commit comments