### 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
default: "no"
    version_added: "2.4"
  exclude:
    description:
      - Package name(s) to exclude when state=present, or latest. This can be a
        list or a comma separated string.
    version_added: "2.7"
    type: list
    elements: str
  skip_broken:
    description:
      - Skip packages with broken dependencies(devsolve) and are causing problems.
    type: bool
    default: "no"
    version_added: "2.7"
  update_cache:
    description:
      - Force dnf to check if cache is out of date and redownload if needed.
        Has an effect only if state is I(present) or I(latest).
    type: bool
    default: "no"
    aliases: [ expire-cache ]
    version_added: "2.7"
  update_only:
    description:
      - When using latest, only update installed packages. Do not install packages.
      - Has an effect only if state is I(latest)
    default: "no"
    type: bool
    version_added: "2.7"