File tree Expand file tree Collapse file tree 3 files changed +20
-8
lines changed Expand file tree Collapse file tree 3 files changed +20
-8
lines changed Original file line number Diff line number Diff line change 6
6
7
7
8
8
class ModelFilterForLoopChecker (checkers .BaseChecker ):
9
+ """
10
+ Checks for usage of "Model.manager.filter() inside of for loops
11
+ """
9
12
__implements__ = (interfaces .IAstroidChecker )
10
13
11
14
name = "model-filter-forloop-checker"
@@ -14,9 +17,9 @@ class ModelFilterForLoopChecker(checkers.BaseChecker):
14
17
f"R{ BASE_ID } 06" : (
15
18
"Consider using '__in' queries" ,
16
19
"consider-using-in-queries" ,
17
- "Using 'Model.filter()' or 'Model.get() inside a for loop may "
18
- "impact performance. Consider using a single query with as '__in' "
19
- "filter instead, outside of the loop."
20
+ "Using 'Model.manager. filter()' or 'Model.manager. get() inside a "
21
+ "for loop may negatively impact performance. Consider using a "
22
+ "single query with as '__in' filter instead, outside of the loop."
20
23
),
21
24
}
22
25
Original file line number Diff line number Diff line change 7
7
8
8
9
9
class ModelSaveForLoopChecker (checkers .BaseChecker ):
10
+ """
11
+ Checks for usage of Model.manager.create() or Model.save() inside of for
12
+ loops
13
+ """
10
14
__implements__ = (interfaces .IAstroidChecker )
11
15
12
16
name = "model-save-forloop-checker"
@@ -15,15 +19,16 @@ class ModelSaveForLoopChecker(checkers.BaseChecker):
15
19
f"R{ BASE_ID } 04" : (
16
20
"Consider using 'Model.bulk_create()'" ,
17
21
"consider-using-bulk-create" ,
18
- "Using 'Model.create()' inside a for loop may impact performance. "
19
- "Consider using 'Model.bulk_create()' instead."
22
+ "Using 'Model.manager.create()' inside a for loop may negatively "
23
+ "impact performance. Consider using 'Model.manager.bulk_create()' "
24
+ "instead."
20
25
),
21
26
f"R{ BASE_ID } 05" : (
22
27
"Consider using 'Model.bulk_*()" ,
23
28
"consider-using-bulk-create-save" ,
24
- "Using 'Model.save()' inside a for loop may impact performance. "
25
- "Consider using 'Model.bulk_update()' or "
26
- "'Model.bulk_create()' instead."
29
+ "Using 'Model.save()' inside a for loop may negatively impact "
30
+ "performance. Consider using 'Model.manager .bulk_update()' or "
31
+ "'Model.manager. bulk_create()' instead."
27
32
),
28
33
}
29
34
Original file line number Diff line number Diff line change 7
7
8
8
9
9
class QuerysetIteratorForLoopChecker (checkers .BaseChecker ):
10
+ """
11
+ Checks for usage of "QuerySet.all()" in the head of a for loop,
12
+ eventually suggesting the usage of ".iterator()"
13
+ """
10
14
__implements__ = (interfaces .IAstroidChecker )
11
15
12
16
name = "queryset-iterator-forloop-checker"
You can’t perform that action at this time.
0 commit comments