Corrected problem with MySQL checks handler and related fields.
This commit is contained in:
parent
151dae2bea
commit
494b408041
|
@ -12,15 +12,13 @@ class DatabaseValidation(BaseDatabaseValidation):
|
|||
from django.db import connection
|
||||
|
||||
errors = super(DatabaseValidation, self).check_field(field, **kwargs)
|
||||
try:
|
||||
field_type = field.db_type(connection)
|
||||
except AttributeError:
|
||||
# If the field is a relative field and the target model is
|
||||
# missing, then field.rel.to is not a model and doesn't have
|
||||
# `_meta` attribute.
|
||||
field_type = ''
|
||||
|
||||
if (field_type.startswith('varchar') and field.unique
|
||||
# Ignore any related fields.
|
||||
if getattr(field, 'rel', None) is None:
|
||||
field_type = field.db_type(connection)
|
||||
|
||||
if (field_type.startswith('varchar') # Look for CharFields...
|
||||
and field.unique # ... that are unique
|
||||
and (field.max_length is None or int(field.max_length) > 255)):
|
||||
errors.append(
|
||||
checks.Error(
|
||||
|
|
Loading…
Reference in New Issue