mirror of
				https://github.com/django/django.git
				synced 2025-10-31 09:41:08 +00:00 
			
		
		
		
	Fixed #861 -- Model validator now validates unique_together
git-svn-id: http://code.djangoproject.com/svn/django/trunk@1323 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
		| @@ -677,6 +677,17 @@ def get_validation_errors(outfile): | |||||||
|                     e.add(rel_opts, "At least one field in %s should have core=True, because it's being edited inline by %s.%s." % (rel_opts.object_name, opts.module_name, opts.object_name)) |                     e.add(rel_opts, "At least one field in %s should have core=True, because it's being edited inline by %s.%s." % (rel_opts.object_name, opts.module_name, opts.object_name)) | ||||||
|                 except StopIteration: |                 except StopIteration: | ||||||
|                     pass |                     pass | ||||||
|  |  | ||||||
|  |             # Check unique_together. | ||||||
|  |             for ut in opts.unique_together: | ||||||
|  |                 for field_name in ut: | ||||||
|  |                     try: | ||||||
|  |                         f = opts.get_field(field_name, many_to_many=True) | ||||||
|  |                     except meta.FieldDoesNotExist: | ||||||
|  |                         e.add(opts, '"unique_together" refers to %s, a field that doesn\'t exist. Check your syntax.' % field_name) | ||||||
|  |                     else: | ||||||
|  |                         if isinstance(f.rel, meta.ManyToMany): | ||||||
|  |                             e.add(opts, '"unique_together" refers to %s. ManyToManyFields are not supported in unique_together.' % f.name) | ||||||
|     return len(e.errors) |     return len(e.errors) | ||||||
|  |  | ||||||
| def validate(outfile=sys.stdout): | def validate(outfile=sys.stdout): | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user