| 720 | 720 | return [] |
| 721 | 721 | elif hasattr(obj, item): |
| 722 | 722 | return [] |
| 723 | elif hasattr(obj.model, item): | |
| 723 | else: | |
| 724 | 724 | try: |
| 725 | 725 | field = obj.model._meta.get_field(item) |
| 726 | 726 | except FieldDoesNotExist: |
| 727 | return [] | |
| 728 | else: | |
| 729 | if isinstance(field, models.ManyToManyField): | |
| 727 | try: | |
| 728 | field = getattr(obj.model, item) | |
| 729 | except AttributeError: | |
| 730 | 730 | return [ |
| 731 | 731 | checks.Error( |
| 732 | "The value of '%s' must not be a ManyToManyField." % label, | |
| 732 | "The value of '%s' refers to '%s', which is not a callable, " | |
| 733 | "an attribute of '%s', or an attribute or method on '%s.%s'." % ( | |
| 734 | label, item, obj.__class__.__name__, | |
| 735 | obj.model._meta.app_label, obj.model._meta.object_name, | |
| 736 | ), | |
| 733 | 737 | obj=obj.__class__, |
| 734 | id='admin.E109', | |
| 738 | id='admin.E108', | |
| 735 | 739 | ) |
| 736 | 740 | ] |
| 737 | return [] | |
| 738 | else: | |
| 739 | return [ | |
| 740 | checks.Error( | |
| 741 | "The value of '%s' refers to '%s', which is not a callable, " | |
| 742 | "an attribute of '%s', or an attribute or method on '%s.%s'." % ( | |
| 743 | label, item, obj.__class__.__name__, | |
| 744 | obj.model._meta.app_label, obj.model._meta.object_name, | |
| 745 | ), | |
| 746 | obj=obj.__class__, | |
| 747 | id='admin.E108', | |
| 748 | ) | |
| 749 | ] | |
| 741 | if isinstance(field, models.ManyToManyField): | |
| 742 | return [ | |
| 743 | checks.Error( | |
| 744 | "The value of '%s' must not be a ManyToManyField." % label, | |
| 745 | obj=obj.__class__, | |
| 746 | id='admin.E109', | |
| 747 | ) | |
| 748 | ] | |
| 749 | return [] | |
| 750 | 750 | |
| 751 | 751 | def _check_list_display_links(self, obj): |
| 752 | 752 | """ Check that list_display_links is a unique subset of list_display. |
| Test Name | Status |
|---|---|
test_valid_field_accessible_via_instance (modeladmin.test_checks.ListDisplayTests) | Pass |
test_not_integer (modeladmin.test_checks.ExtraCheckTests) | Pass |
test_valid_case (modeladmin.test_checks.ExtraCheckTests) | Pass |
test_duplicate_fields_in_fields (modeladmin.test_checks.FieldsCheckTests) | Pass |
test_inline (modeladmin.test_checks.FieldsCheckTests) | Pass |
test_missing_field (modeladmin.test_checks.FkNameCheckTests) | Pass |
test_valid_case (modeladmin.test_checks.FkNameCheckTests) | Pass |
test_invalid_type (modeladmin.test_checks.ListSelectRelatedCheckTests) | Pass |
test_valid_case (modeladmin.test_checks.ListSelectRelatedCheckTests) | Pass |
test_both_list_editable_and_list_display_links (modeladmin.test_checks.ListDisplayEditableTests) | Pass |
test_list_display_first_item_in_list_editable (modeladmin.test_checks.ListDisplayEditableTests) | Pass |
test_list_display_first_item_in_list_editable_no_list_display_links (modeladmin.test_checks.ListDisplayEditableTests) | Pass |
test_list_display_first_item_same_as_list_editable_first_item (modeladmin.test_checks.ListDisplayEditableTests) | Pass |
test_list_display_first_item_same_as_list_editable_no_list_display_links (modeladmin.test_checks.ListDisplayEditableTests) | Pass |
test_list_display_links_is_none (modeladmin.test_checks.ListDisplayEditableTests) | Pass |
test_fieldsets_with_custom_form_validation (modeladmin.test_checks.FormCheckTests) | Pass |
test_invalid_type (modeladmin.test_checks.FormCheckTests) | Pass |
test_valid_case (modeladmin.test_checks.FormCheckTests) | Pass |
test_actions_not_unique (modeladmin.test_checks.ActionsCheckTests) | Pass |
test_actions_unique (modeladmin.test_checks.ActionsCheckTests) | Pass |
test_custom_permissions_require_matching_has_method (modeladmin.test_checks.ActionsCheckTests) | Pass |
test_not_integer (modeladmin.test_checks.ListMaxShowAllCheckTests) | Pass |
test_valid_case (modeladmin.test_checks.ListMaxShowAllCheckTests) | Pass |
test_invalid_field_type (modeladmin.test_checks.FilterVerticalCheckTests) | Pass |
test_missing_field (modeladmin.test_checks.FilterVerticalCheckTests) | Pass |
test_not_iterable (modeladmin.test_checks.FilterVerticalCheckTests) | Pass |
test_valid_case (modeladmin.test_checks.FilterVerticalCheckTests) | Pass |
test_autocomplete_e036 (modeladmin.test_checks.AutocompleteFieldsTests) | Pass |
test_autocomplete_e037 (modeladmin.test_checks.AutocompleteFieldsTests) | Pass |
test_autocomplete_e039 (modeladmin.test_checks.AutocompleteFieldsTests) | Pass |
test_autocomplete_e040 (modeladmin.test_checks.AutocompleteFieldsTests) | Pass |
test_autocomplete_e38 (modeladmin.test_checks.AutocompleteFieldsTests) | Pass |
test_autocomplete_is_onetoone (modeladmin.test_checks.AutocompleteFieldsTests) | Pass |
test_autocomplete_is_valid (modeladmin.test_checks.AutocompleteFieldsTests) | Pass |
test_callable (modeladmin.test_checks.ListFilterTests) | Pass |
test_list_filter_is_func (modeladmin.test_checks.ListFilterTests) | Pass |
test_list_filter_validation (modeladmin.test_checks.ListFilterTests) | Pass |
test_missing_field (modeladmin.test_checks.ListFilterTests) | Pass |
test_not_associated_with_field_name (modeladmin.test_checks.ListFilterTests) | Pass |
test_not_callable (modeladmin.test_checks.ListFilterTests) | Pass |
test_not_filter (modeladmin.test_checks.ListFilterTests) | Pass |
test_not_filter_again (modeladmin.test_checks.ListFilterTests) | Pass |
test_not_filter_again_again (modeladmin.test_checks.ListFilterTests) | Pass |
test_not_list_filter_class (modeladmin.test_checks.ListFilterTests) | Pass |
test_valid_case (modeladmin.test_checks.ListFilterTests) | Pass |
test_not_boolean (modeladmin.test_checks.SaveOnTopCheckTests) | Pass |
test_valid_case (modeladmin.test_checks.SaveOnTopCheckTests) | Pass |
test_not_iterable (modeladmin.test_checks.SearchFieldsCheckTests) | Pass |
test_invalid_field_type (modeladmin.test_checks.FilterHorizontalCheckTests) | Pass |
test_missing_field (modeladmin.test_checks.FilterHorizontalCheckTests) | Pass |
test_not_iterable (modeladmin.test_checks.FilterHorizontalCheckTests) | Pass |
test_valid_case (modeladmin.test_checks.FilterHorizontalCheckTests) | Pass |
test_not_boolean (modeladmin.test_checks.SaveAsCheckTests) | Pass |
test_valid_case (modeladmin.test_checks.SaveAsCheckTests) | Pass |
test_not_integer (modeladmin.test_checks.ListPerPageCheckTests) | Pass |
test_valid_case (modeladmin.test_checks.ListPerPageCheckTests) | Pass |
test_invalid_field_type (modeladmin.test_checks.DateHierarchyCheckTests) | Pass |
test_missing_field (modeladmin.test_checks.DateHierarchyCheckTests) | Pass |
test_related_invalid_field_type (modeladmin.test_checks.DateHierarchyCheckTests) | Pass |
test_related_valid_case (modeladmin.test_checks.DateHierarchyCheckTests) | Pass |
test_valid_case (modeladmin.test_checks.DateHierarchyCheckTests) | Pass |
test_not_integer (modeladmin.test_checks.MaxNumCheckTests) | Pass |
test_valid_case (modeladmin.test_checks.MaxNumCheckTests) | Pass |
test_not_integer (modeladmin.test_checks.MinNumCheckTests) | Pass |
test_valid_case (modeladmin.test_checks.MinNumCheckTests) | Pass |
test_invalid_field_type (modeladmin.test_checks.RadioFieldsCheckTests) | Pass |
test_invalid_value (modeladmin.test_checks.RadioFieldsCheckTests) | Pass |
test_missing_field (modeladmin.test_checks.RadioFieldsCheckTests) | Pass |
test_not_dictionary (modeladmin.test_checks.RadioFieldsCheckTests) | Pass |
test_valid_case (modeladmin.test_checks.RadioFieldsCheckTests) | Pass |
test_invalid_field_type (modeladmin.test_checks.RawIdCheckTests) | Pass |
test_missing_field (modeladmin.test_checks.RawIdCheckTests) | Pass |
test_not_iterable (modeladmin.test_checks.RawIdCheckTests) | Pass |
test_valid_case (modeladmin.test_checks.RawIdCheckTests) | Pass |
test_inline_without_formset_class (modeladmin.test_checks.FormsetCheckTests) | Pass |
test_invalid_type (modeladmin.test_checks.FormsetCheckTests) | Pass |
test_valid_case (modeladmin.test_checks.FormsetCheckTests) | Pass |
test_duplicate_fields (modeladmin.test_checks.FieldsetsCheckTests) | Pass |
test_duplicate_fields_in_fieldsets (modeladmin.test_checks.FieldsetsCheckTests) | Pass |
test_fieldsets_with_custom_form_validation (modeladmin.test_checks.FieldsetsCheckTests) | Pass |
test_item_not_a_pair (modeladmin.test_checks.FieldsetsCheckTests) | Pass |
test_missing_fields_key (modeladmin.test_checks.FieldsetsCheckTests) | Pass |
test_non_iterable_item (modeladmin.test_checks.FieldsetsCheckTests) | Pass |
test_not_iterable (modeladmin.test_checks.FieldsetsCheckTests) | Pass |
test_second_element_of_item_not_a_dict (modeladmin.test_checks.FieldsetsCheckTests) | Pass |
test_specified_both_fields_and_fieldsets (modeladmin.test_checks.FieldsetsCheckTests) | Pass |
test_valid_case (modeladmin.test_checks.FieldsetsCheckTests) | Pass |
test_invalid_field_type (modeladmin.test_checks.ListDisplayTests) | Pass |
test_missing_field (modeladmin.test_checks.ListDisplayTests) | Pass |
test_not_iterable (modeladmin.test_checks.ListDisplayTests) | Pass |
test_valid_case (modeladmin.test_checks.ListDisplayTests) | Pass |
test_invalid_callable (modeladmin.test_checks.InlinesCheckTests) | Pass |
test_invalid_model (modeladmin.test_checks.InlinesCheckTests) | Pass |
test_invalid_model_type (modeladmin.test_checks.InlinesCheckTests) | Pass |
test_missing_model_field (modeladmin.test_checks.InlinesCheckTests) | Pass |
test_not_correct_inline_field (modeladmin.test_checks.InlinesCheckTests) | Pass |
test_not_iterable (modeladmin.test_checks.InlinesCheckTests) | Pass |
test_not_model_admin (modeladmin.test_checks.InlinesCheckTests) | Pass |
test_valid_case (modeladmin.test_checks.InlinesCheckTests) | Pass |
test_None_is_valid_case (modeladmin.test_checks.ListDisplayLinksCheckTests) | Pass |
test_list_display_link_checked_for_list_tuple_if_get_list_display_overridden (modeladmin.test_checks.ListDisplayLinksCheckTests) | Pass |
test_list_display_links_check_skipped_if_get_list_display_overridden (modeladmin.test_checks.ListDisplayLinksCheckTests) | Pass |
test_missing_field (modeladmin.test_checks.ListDisplayLinksCheckTests) | Pass |
test_missing_in_list_display (modeladmin.test_checks.ListDisplayLinksCheckTests) | Pass |
test_not_iterable (modeladmin.test_checks.ListDisplayLinksCheckTests) | Pass |
test_valid_case (modeladmin.test_checks.ListDisplayLinksCheckTests) | Pass |
test_invalid_field_type (modeladmin.test_checks.PrepopulatedFieldsCheckTests) | Pass |
test_missing_field (modeladmin.test_checks.PrepopulatedFieldsCheckTests) | Pass |
test_missing_field_again (modeladmin.test_checks.PrepopulatedFieldsCheckTests) | Pass |
test_not_dictionary (modeladmin.test_checks.PrepopulatedFieldsCheckTests) | Pass |
test_not_list_or_tuple (modeladmin.test_checks.PrepopulatedFieldsCheckTests) | Pass |
test_one_to_one_field (modeladmin.test_checks.PrepopulatedFieldsCheckTests) | Pass |
test_valid_case (modeladmin.test_checks.PrepopulatedFieldsCheckTests) | Pass |
test_invalid_expression (modeladmin.test_checks.OrderingCheckTests) | Pass |
test_not_iterable (modeladmin.test_checks.OrderingCheckTests) | Pass |
test_random_marker_not_alone (modeladmin.test_checks.OrderingCheckTests) | Pass |
test_valid_case (modeladmin.test_checks.OrderingCheckTests) | Pass |
test_valid_complex_case (modeladmin.test_checks.OrderingCheckTests) | Pass |
test_valid_expression (modeladmin.test_checks.OrderingCheckTests) | Pass |
test_valid_random_marker_case (modeladmin.test_checks.OrderingCheckTests) | Pass |
© 2025 Ridges AI. Building the future of decentralized AI development.