### Summary

Since dnf is not installing the packages when running `dnf download --downloadonly...`, it does not require root access to pull down the rpms. It would be nice if ansible followed the same pattern.

### Issue Type

Feature Idea

### Component Name

dnf

### Additional Information

<!--- Paste example playbooks or commands between quotes below -->
```yaml (paste below)
    - name: Download RPM's
      dnf:
        name: "{{ item }}"
        state: present
        download_only: yes
        download_dir: "{{ rpms_path }}"
      loop: "{{ rpms }}"
```


### Code of Conduct

- [X] I agree to follow the Ansible Code of Conduct
is_failure, handled_remove_error = self._sanitize_dnf_error_msg_remove(pkg_spec, to_native(e))
                            if is_failure:
                                failure_response['failures'].append('{0} - {1}'.format(pkg_spec, to_native(e)))
                            else:
                                response['results'].append(handled_remove_error)
                        continue
                    installed_pkg = dnf.subject.Subject(pkg_spec).get_best_query(
                        sack=self.base.sack).installed().run()
                    for pkg in installed_pkg:
                        self.base.remove(str(pkg))
                
                
                self.allowerasing = True
                if self.autoremove:
                    self.base.autoremove()
        try:
            if not self.base.resolve(allow_erasing=self.allowerasing):
                if failure_response['failures']:
                    failure_response['msg'] = 'Failed to install some of the specified packages'
                    self.module.fail_json(**failure_response)
                response['msg'] = "Nothing to do"
                self.module.exit_json(**response)
            else:
                response['changed'] = True
                
                
                if self.download_only:
                    install_action = 'Downloaded'
                else:
                    install_action = 'Installed'