files.File
Model Info
Key |
Value |
---|---|
Model Name |
File |
Verbose Name |
file |
Verbose Name Plural |
files |
Docstring |
File(created, modified, id, version, file, size, hash, original_hash, status, datestatuschanged, strict_compatibility, approval_date, cert_serial_num, is_signed, is_experiment, is_mozilla_signed_extension, original_status, status_disabled_reason, manifest_version) |
Is Abstract |
False |
Is Proxy |
False |
Is Managed |
True |
Ordering |
[] |
Permissions |
[] |
Default Permissions |
(‘add’, ‘change’, ‘delete’, ‘view’) |
Indexes |
[<Index: fields=[‘created’, ‘version’] name=’created_idx’>, <Index: fields=[‘datestatuschanged’, ‘version’] name=’statuschanged_idx’>, <Index: fields=[‘status’] name=’status’>] |
Constraints |
[] |
Database Table |
files |
Base Manager |
objects |
Default Manager |
None |
File |
/data/olympia/src/olympia/files/models.py |
Starting Line Number |
87 |
Method Resolution Order |
(<class ‘olympia.files.models.File’>, <class ‘olympia.amo.models.OnChangeMixin’>, <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 |
---|---|---|---|---|
|
OneToOneRel |
integer UNSIGNED |
||
|
DateTimeField |
approval_date |
datetime(6) |
approval date |
|
TextField |
cert_serial_num |
longtext |
cert serial num |
|
DateTimeField |
created |
datetime(6) |
created |
|
DateTimeField |
datestatuschanged |
datetime(6) |
datestatuschanged |
|
FileField |
filename |
varchar(255) |
file |
|
OneToOneRel |
integer UNSIGNED |
||
|
CharField |
hash |
varchar(255) |
hash |
|
PositiveAutoField |
id |
integer UNSIGNED AUTO_INCREMENT |
id |
|
BooleanField |
is_experiment |
bool |
is experiment |
|
BooleanField |
is_mozilla_signed_extension |
bool |
is mozilla signed extension |
|
BooleanField |
is_signed |
bool |
is signed |
|
SmallIntegerField |
manifest_version |
smallint |
manifest version |
|
DateTimeField |
modified |
datetime(6) |
modified |
|
CharField |
original_hash |
varchar(255) |
original hash |
|
PositiveSmallIntegerField |
original_status |
smallint UNSIGNED |
original status |
|
PositiveIntegerField |
size |
integer UNSIGNED |
size |
|
PositiveSmallIntegerField |
status |
smallint UNSIGNED |
status |
|
PositiveSmallIntegerField |
status_disabled_reason |
smallint UNSIGNED |
status disabled reason |
|
BooleanField |
strict_compatibility |
bool |
strict compatibility |
|
OneToOneRel |
integer UNSIGNED |
||
|
OneToOneField |
version_id |
integer UNSIGNED |
version |
Relations
Field Name |
Field Type |
Database Column |
Database Type |
Related Model |
Related Name |
---|---|---|---|---|---|
|
OneToOneField |
version_id |
integer UNSIGNED |
versions.Version |
file_set |
fields_reverse_relation=[FieldReverseRelation(name=’validation’, field_type=’OneToOneRel’, field_db_type=’integer UNSIGNED’, related_model=’files.FileValidation’, field_name_on_related_model=’file’, field_type_on_related_model=’OneToOneField’), FieldReverseRelation(name=’_webext_permissions’, field_type=’OneToOneRel’, field_db_type=’integer UNSIGNED’, related_model=’files.WebextPermission’, field_name_on_related_model=’file’, field_type_on_related_model=’OneToOneField’), FieldReverseRelation(name=’file_manifest’, field_type=’OneToOneRel’, field_db_type=’integer UNSIGNED’, related_model=’files.FileManifest’, field_name_on_related_model=’file’, field_type_on_related_model=’OneToOneField’)]
Reverse Relations
Field Name |
Field Type |
Database Type |
Related Model |
Field Name on Related Model |
Field Type on Related Model |
---|---|---|---|---|---|
|
OneToOneRel |
integer UNSIGNED |
files.WebextPermission |
file |
OneToOneField |
|
OneToOneRel |
integer UNSIGNED |
files.FileManifest |
file |
OneToOneField |
|
OneToOneRel |
integer UNSIGNED |
files.FileValidation |
file |
OneToOneField |
Methods
Other Methods
Method Name |
Signature |
---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Private Methods
Method Name |
Signature |
---|---|
|
|
|
|
|
|
|
|
Custom Managers
default
Class: FileManager
*Base for all managers in AMO.
Returns BaseQuerySets.
If a model has translated fields, they’ll be attached through a transform function.*
Custom Methods
disabled_that_would_be_renabled_with_addon(self)
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: FileManager
*Base for all managers in AMO.
Returns BaseQuerySets.
If a model has translated fields, they’ll be attached through a transform function.*
Custom Methods
disabled_that_would_be_renabled_with_addon(self)
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-08 !!!