Opened 16 years ago
Closed 16 years ago
#11380 closed (invalid)
missed error description and line (and file) which contains it [TIP]
| Reported by: | pedromagnus | Owned by: | nobody |
|---|---|---|---|
| Component: | Uncategorized | Version: | 1.0 |
| Severity: | Keywords: | error, _meta, foreignkey | |
| Cc: | Triage Stage: | Unreviewed | |
| Has patch: | no | Needs documentation: | no |
| Needs tests: | no | Patch needs improvement: | no |
| Easy pickings: | no | UI/UX: | no |
Description
I had the following output for validating my aplication:
/var/lib/python-support/python2.6/MySQLdb/__init__.py:34: DeprecationWarning: the sets module is deprecated
from sets import ImmutableSet
Traceback (most recent call last):
File "manage.py", line 11, in <module>
execute_manager(settings)
File "/var/lib/python-support/python2.6/django/core/management/__init__.py", line 340, in execute_manager
utility.execute()
File "/var/lib/python-support/python2.6/django/core/management/__init__.py", line 295, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "/var/lib/python-support/python2.6/django/core/management/base.py", line 192, in run_from_argv
self.execute(*args, **options.__dict__)
File "/var/lib/python-support/python2.6/django/core/management/base.py", line 219, in execute
output = self.handle(*args, **options)
File "/var/lib/python-support/python2.6/django/core/management/base.py", line 348, in handle
return self.handle_noargs(**options)
File "/var/lib/python-support/python2.6/django/core/management/commands/validate.py", line 9, in handle_noargs
self.validate(display_num_errors=True)
File "/var/lib/python-support/python2.6/django/core/management/base.py", line 246, in validate
num_errors = get_validation_errors(s, app)
File "/var/lib/python-support/python2.6/django/core/management/validation.py", line 95, in get_validation_errors
for r in rel_opts.get_all_related_objects():
File "/var/lib/python-support/python2.6/django/db/models/options.py", line 338, in get_all_related_objects
self._fill_related_objects_cache()
File "/var/lib/python-support/python2.6/django/db/models/options.py", line 367, in _fill_related_objects_cache
if f.rel and not isinstance(f.rel.to, str) and self == f.rel.to._meta:
AttributeError: 'unicode' object has no attribute '_meta'
My app has several subapps and models, so there's no way I could locate the error with this output. By the way, someone knows why the validation is failing by? :P
Sorry for my bad english)
Greetings
Pedro
Change History (2)
comment:1 by , 16 years ago
| Keywords: | foreignkey added |
|---|---|
| Summary: | missed error description and line (and file) which contains it → missed error description and line (and file) which contains it [TIP] |
comment:2 by , 16 years ago
| Resolution: | → invalid |
|---|---|
| Status: | new → closed |
Closing as invalid. USer error, not bug.
Note:
See TracTickets
for help on using tickets.
I finally found the origin of the error (with some help of a camarade).
The error was a ForeignKey declaration:
The docs say (and really clear) that a ForeignKey declaration MUST start with the class name (not with its alias). My mistake is had read the docs days after I wrote my app, so I forgot what I had written :P
The thing here is: the error is missed for the validation, and appears when it's too late to reach the error cause (I think). It has to point out this kind of errors, it's very tedious to dive in your code looking for 'something bad'.
I hope this could be helpfull to someone who's about to dive in the same way I did.
Greetings.
Pedro