From 0cc059cd104cdb70340bd08e597d403d80dc42a6 Mon Sep 17 00:00:00 2001 From: Ion Scerbatiuc Date: Sat, 1 Aug 2015 07:46:25 -0700 Subject: Fixed #25172 -- Fixed check framework to work with multiple databases. --- django/db/models/fields/__init__.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'django') diff --git a/django/db/models/fields/__init__.py b/django/db/models/fields/__init__.py index fe5ff6704f..5cd96d2902 100644 --- a/django/db/models/fields/__init__.py +++ b/django/db/models/fields/__init__.py @@ -19,7 +19,7 @@ from django.core import checks, exceptions, validators # django.core.exceptions. It is retained here for backwards compatibility # purposes. from django.core.exceptions import FieldDoesNotExist # NOQA -from django.db import connection +from django.db import connection, connections, router from django.db.models.lookups import ( Lookup, RegisterLookupMixin, Transform, default_lookups, ) @@ -315,7 +315,11 @@ class Field(RegisterLookupMixin): return [] def _check_backend_specific_checks(self, **kwargs): - return connection.validation.check_field(self, **kwargs) + app_label = self.model._meta.app_label + for db in connections: + if router.allow_migrate(db, app_label, model=self.model): + return connections[db].validation.check_field(self, **kwargs) + return [] def _check_deprecation_details(self): if self.system_check_removed_details is not None: -- cgit v1.3