scanners.ScannerQueryRule

Model Info

Key

Value

Model Name

ScannerQueryRule

Verbose Name

scanner query rule

Verbose Name Plural

scanner query rules

Docstring

ScannerQueryRule(id, created, modified, name, pretty_name, description, definition, scanner, state, run_on_disabled_addons, celery_group_result_id, task_count, completed)

Is Abstract

False

Is Proxy

False

Is Managed

True

Ordering

[]

Permissions

[]

Default Permissions

(‘add’, ‘change’, ‘delete’, ‘view’)

Indexes

[]

Constraints

[]

Database Table

scanners_query_rules

Base Manager

objects

Default Manager

None

File

/data/olympia/src/olympia/scanners/models.py

Starting Line Number

372

Method Resolution Order

(<class ‘olympia.scanners.models.ScannerQueryRule’>, <class ‘olympia.scanners.models.AbstractScannerRule’>, <class ‘olympia.amo.models.ModelBase’>, <class ‘olympia.amo.models.SaveUpdateMixin’>, <class ‘django.db.models.base.Model’>, <class ‘django.db.models.utils.AltersData’>, <class ‘object’>)

Fields

Field Name

Field Type

Database Column

Database Type

Verbose Name

celery_group_result_id

UUIDField

celery_group_result_id

char(32)

celery group result id

completed

DateTimeField

completed

datetime(6)

completed

created

DateTimeField

created

datetime(6)

created

definition

TextField

definition

longtext

definition

description

CharField

description

varchar(255)

description

id (pk)

AutoField

id

integer AUTO_INCREMENT

ID

modified

DateTimeField

modified

datetime(6)

modified

name

CharField

name

varchar(200)

name

pretty_name

CharField

pretty_name

varchar(255)

Human-readable name

results

ManyToOneRel

integer

run_on_disabled_addons

BooleanField

run_on_disabled_addons

bool

run on disabled addons

scanner

PositiveSmallIntegerField

scanner

smallint UNSIGNED

scanner

state

PositiveSmallIntegerField

state

smallint UNSIGNED

state

task_count

PositiveIntegerField

task_count

integer UNSIGNED

task count

fields_reverse_relation=[FieldReverseRelation(name=’results’, field_type=’ManyToOneRel’, field_db_type=’integer’, related_model=’scanners.ScannerQueryResult’, field_name_on_related_model=’matched_rule’, field_type_on_related_model=’ForeignKey’)]

Reverse Relations

Field Name

Field Type

Database Type

Related Model

Field Name on Related Model

Field Type on Related Model

results

ManyToOneRel

integer

scanners.ScannerQueryResult

matched_rule

ForeignKey

Methods

Other Methods

Method Name

Signature

change_state_to

(self, target)

clean_yara

(self)

completion_rate

(self)

get_admin_absolute_url

(self)

get_admin_url_path

(self)

get_next_by_created

(self, *, field=<django.db.models.fields.DateTimeField: created>, is_next=True, **kwargs)

get_next_by_modified

(self, *, field=<django.db.models.fields.DateTimeField: modified>, is_next=True, **kwargs)

get_previous_by_created

(self, *, field=<django.db.models.fields.DateTimeField: created>, is_next=False, **kwargs)

get_previous_by_modified

(self, *, field=<django.db.models.fields.DateTimeField: modified>, is_next=False, **kwargs)

get_scanner_display

(self, *, field=<django.db.models.fields.PositiveSmallIntegerField: scanner>)

get_state_display

(self, *, field=<django.db.models.fields.PositiveSmallIntegerField: state>)

get_unfiltered_manager

()

get_yara_externals

()

reload

(self)

serializable_reference

(self)

update

(self, **kw)

Private Methods

Method Name

Signature

_get_completed_tasks_count

(self)

_get_field_value_map

(self, meta, exclude=None)

Custom Managers

default

Class: ManagerBase

*Base for all managers in AMO.

Returns BaseQuerySets.

If a model has translated fields, they’ll be attached through a transform function.*

Custom Methods

transform(self, fn)

Custom QuerySet

Class: BaseQuerySet

Represent a lazy database lookup for a set of objects.

Custom Methods
no_transforms(self)
only_translations(self)

Remove all transforms except translations.

optimized_count(self)

*Slightly optimized count() for cases where there is a DISTINCT in the queryset.

When a count() call is made on a queryset that has a distinct, that causes django to run the full SELECT (including all fields, distinct, ordering etc) in a subquery and then COUNT() on the result of that subquery, which is costly/innefficient. That’s tracked in https://code.djangoproject.com/ticket/30685. We can’t easily fix the fact that there is a subquery, but we can avoid selecting all fields and ordering in that subquery needlessly.*

pop_transforms(self)
transform(self, fn)

objects

Class: ManagerBase

*Base for all managers in AMO.

Returns BaseQuerySets.

If a model has translated fields, they’ll be attached through a transform function.*

Custom Methods

transform(self, fn)

Custom QuerySet

Class: BaseQuerySet

Represent a lazy database lookup for a set of objects.

Custom Methods
no_transforms(self)
only_translations(self)

Remove all transforms except translations.

optimized_count(self)

*Slightly optimized count() for cases where there is a DISTINCT in the queryset.

When a count() call is made on a queryset that has a distinct, that causes django to run the full SELECT (including all fields, distinct, ordering etc) in a subquery and then COUNT() on the result of that subquery, which is costly/innefficient. That’s tracked in https://code.djangoproject.com/ticket/30685. We can’t easily fix the fact that there is a subquery, but we can avoid selecting all fields and ordering in that subquery needlessly.*

pop_transforms(self)
transform(self, fn)

!!! THIS DOCUMENT WAS AUTOGENERATED ON 2025-07-10 !!!