mirror of
				https://github.com/django/django.git
				synced 2025-10-31 09:41:08 +00:00 
			
		
		
		
	Fixed #31086 -- Improved error message for admin model inlines with more than one foreign key to the same parent.
This commit is contained in:
		
				
					committed by
					
						 Mariusz Felisiak
						Mariusz Felisiak
					
				
			
			
				
	
			
			
			
						parent
						
							ff00a05347
						
					
				
				
					commit
					f4647179cc
				
			| @@ -1032,7 +1032,8 @@ def _get_foreign_key(parent_model, model, fk_name=None, can_fail=False): | ||||
|             ) | ||||
|         else: | ||||
|             raise ValueError( | ||||
|                 "'%s' has more than one ForeignKey to '%s'." % ( | ||||
|                 "'%s' has more than one ForeignKey to '%s'. You must specify " | ||||
|                 "a 'fk_name' attribute." % ( | ||||
|                     model._meta.label, | ||||
|                     parent_model._meta.label, | ||||
|                 ) | ||||
|   | ||||
| @@ -645,7 +645,8 @@ inline on a :class:`~django.contrib.admin.ModelAdmin`. | ||||
| * **admin.E201**: Cannot exclude the field ``<field name>``, because it is the | ||||
|   foreign key to the parent model ``<app_label>.<model>``. | ||||
| * **admin.E202**: ``<model>`` has no ``ForeignKey`` to ``<parent model>``./ | ||||
|   ``<model>`` has more than one ``ForeignKey`` to ``<parent model>``. | ||||
|   ``<model>`` has more than one ``ForeignKey`` to ``<parent model>``. You must | ||||
|   specify a ``fk_name`` attribute. | ||||
| * **admin.E203**: The value of ``extra`` must be an integer. | ||||
| * **admin.E204**: The value of ``max_num`` must be an integer. | ||||
| * **admin.E205**: The value of ``min_num`` must be an integer. | ||||
|   | ||||
| @@ -636,7 +636,9 @@ class SystemChecksTestCase(SimpleTestCase): | ||||
|         errors = MyAdmin(Album, AdminSite()).check() | ||||
|         expected = [ | ||||
|             checks.Error( | ||||
|                 "'admin_checks.TwoAlbumFKAndAnE' has more than one ForeignKey to 'admin_checks.Album'.", | ||||
|                 "'admin_checks.TwoAlbumFKAndAnE' has more than one ForeignKey " | ||||
|                 "to 'admin_checks.Album'. You must specify a 'fk_name' " | ||||
|                 "attribute.", | ||||
|                 obj=TwoAlbumFKAndAnEInline, | ||||
|                 id='admin.E202', | ||||
|             ) | ||||
|   | ||||
		Reference in New Issue
	
	Block a user