#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.

Reply via email to