(self, opts, mask, select_mask=None)
| 858 | return select_mask |
| 859 | |
| 860 | def _get_only_select_mask(self, opts, mask, select_mask=None): |
| 861 | if select_mask is None: |
| 862 | select_mask = {} |
| 863 | select_mask[opts.pk] = {} |
| 864 | # Only include fields mentioned in the mask. |
| 865 | for field_name, field_mask in mask.items(): |
| 866 | field = opts.get_field(field_name) |
| 867 | field_select_mask = select_mask.setdefault(field, {}) |
| 868 | if field_mask: |
| 869 | if not field.is_relation: |
| 870 | raise FieldError(next(iter(field_mask))) |
| 871 | related_model = field.remote_field.model._meta.concrete_model |
| 872 | self._get_only_select_mask( |
| 873 | related_model._meta, field_mask, field_select_mask |
| 874 | ) |
| 875 | return select_mask |
| 876 | |
| 877 | def get_select_mask(self): |
| 878 | """ |
no test coverage detected