#25867: Nested ArrayField cause error in system check on 1.9
----------------------------------+-----------------
Reporter: mpre | Owner:
Type: Bug | Status: new
Component: contrib.postgres | Version: 1.9
Severity: Normal | Keywords:
Triage Stage: Unreviewed | Has patch: 0
Easy pickings: 0 | UI/UX: 0
----------------------------------+-----------------
Nested ArrayField generates an error during check errors in 1.9, but works
on 1.8.7
Using a nested ArrayField from the docs will cause the error in 1.9:
To recreate, in a fresh project add the following models.py:
{{{#!python
from django.contrib.postgres.fields import ArrayField
from django.db import models
class Board(models.Model):
pieces = ArrayField(ArrayField(models.IntegerField()))
}}}
When you runserver the system check fails:
{{{#!python
Unhandled exception in thread started by <function wrapper at 0xb61e3844>
Traceback (most recent call last):
File "/home/vagrant/.virtualenvs/djangotest/local/lib/python2.7/site-
packages/django/utils/autoreload.py", line 226, in wrapper
fn(*args, **kwargs)
File "/home/vagrant/.virtualenvs/djangotest/local/lib/python2.7/site-
packages/django/core/management/commands/runserver.py", line 116, in
inner_run
self.check(display_num_errors=True)
File "/home/vagrant/.virtualenvs/djangotest/local/lib/python2.7/site-
packages/django/core/management/base.py", line 426, in check
include_deployment_checks=include_deployment_checks,
File "/home/vagrant/.virtualenvs/djangotest/local/lib/python2.7/site-
packages/django/core/checks/registry.py", line 75, in run_checks
new_errors = check(app_configs=app_configs)
File "/home/vagrant/.virtualenvs/djangotest/local/lib/python2.7/site-
packages/django/core/checks/model_checks.py", line 28, in check_all_models
errors.extend(model.check(**kwargs))
File "/home/vagrant/.virtualenvs/djangotest/local/lib/python2.7/site-
packages/django/db/models/base.py", line 1170, in check
errors.extend(cls._check_fields(**kwargs))
File "/home/vagrant/.virtualenvs/djangotest/local/lib/python2.7/site-
packages/django/db/models/base.py", line 1247, in _check_fields
errors.extend(field.check(**kwargs))
File "/home/vagrant/.virtualenvs/djangotest/local/lib/python2.7/site-
packages/django/contrib/postgres/fields/array.py", line 49, in check
base_errors = self.base_field.check()
File "/home/vagrant/.virtualenvs/djangotest/local/lib/python2.7/site-
packages/django/contrib/postgres/fields/array.py", line 49, in check
base_errors = self.base_field.check()
File "/home/vagrant/.virtualenvs/djangotest/local/lib/python2.7/site-
packages/django/db/models/fields/__init__.py", line 1820, in check
errors = super(IntegerField, self).check(**kwargs)
File "/home/vagrant/.virtualenvs/djangotest/local/lib/python2.7/site-
packages/django/db/models/fields/__init__.py", line 208, in check
errors.extend(self._check_backend_specific_checks(**kwargs))
File "/home/vagrant/.virtualenvs/djangotest/local/lib/python2.7/site-
packages/django/db/models/fields/__init__.py", line 314, in
_check_backend_specific_checks
app_label = self.model._meta.app_label
AttributeError: 'IntegerField' object has no attribute 'model'
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/25867>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.
--
You received this message because you are subscribed to the Google Groups
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/django-updates/047.0d7d82108b2a45a30579483e7a95b8dc%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.