Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

Run links keep only the last value of repeated query parameters

Open Beginner friendly
#83 0 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

Nobody has claimed this yet.

Assessment

Difficulty
2/5
Estimated time
1-3 hours
Newbie friendliness
72/100
Issue type
Bug
Clarity
Clearly specified
Activity status
Active
Tech stack
python
Domain
backend

Research direction

Start with the Run view’s initial value preparation, where the issue says request.GET.dict() drops repeated parameters, and compare it with NetBox’s built-in Script view using normalize_querydict(). Check how the Run form handles MultiObjectVar and MultiChoiceVar values. Done means both values from a repeated query parameter are selected; confirm this for both field types.

Written by the indexing model from the issue text.

Description

app: scripts severity: medium status: backlog type: bug
Plugin Version

v0.0.1

NetBox Version

v4.7.4

Python Version

3.12

Steps to Reproduce
  1. Upload and activate the following Script:
    from dcim.models import Interface
    from netbox_scripts import MultiObjectVar, Script
    
    
    class PickInterfaces(Script):
        interfaces = MultiObjectVar(model=Interface)
    
        def run(self, data, commit):
            for interface in data['interfaces']:
                self.log_info(str(interface), obj=interface)
    
  2. Use two existing interfaces, or create two on a device, and note their IDs.
  3. As a user who can run the Script and view both interfaces, open its Run URL with the interfaces parameter repeated. Replace the sample IDs with the actual interface IDs:
    /plugins/netbox-scripts/scripts/<id>/run/?interfaces=1&interfaces=2
    
Expected Behavior

Both interfaces are selected in the form, matching NetBox's built-in Script form.

Observed Behavior

Only interface 2 is selected.

The Run view prepares initial values with request.GET.dict(), which discards earlier values for the same parameter. This also affects MultiChoiceVar fields. NetBox's built-in Script view preserves repeated values with normalize_querydict().

Dominant language
Python
Stars
8
Forks
0
Avg merge
11h 35m
Merged PRs (30d)
20

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from netbox-community/netbox-scripts

All issues in netbox-community/netbox-scripts

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.