Skip to content

Convert Admin views to use forms with validation #18511

@miketheman

Description

@miketheman

Sometimes when interacting with the Admin UI, data validation in forms is not as robust as it could be, leading to the occasional exception raised.

There are currently 100 views configured in Admin-related views, and 26 of them use POST methods:

$ ag "@view_config" "warehouse/admin/views/" --py --filename --count
warehouse/admin/views/helpscout.py:1
warehouse/admin/views/observations.py:1
warehouse/admin/views/ip_addresses.py:2
warehouse/admin/views/prohibited_user_names.py:2
warehouse/admin/views/flags.py:2
warehouse/admin/views/core.py:1
warehouse/admin/views/emails.py:3
warehouse/admin/views/includes.py:2
warehouse/admin/views/sponsors.py:6
warehouse/admin/views/banners.py:7
warehouse/admin/views/prohibited_email_domains.py:3
warehouse/admin/views/journals.py:1
warehouse/admin/views/macaroons.py:4
warehouse/admin/views/organizations.py:13
warehouse/admin/views/malware_reports.py:10
warehouse/admin/views/users.py:16
warehouse/admin/views/prohibited_project_names.py:6
warehouse/admin/views/quarantine.py:1
warehouse/admin/views/projects.py:19

$ ag "request_method=\"POST" warehouse/admin/views | wc -l
      26

Not all views need forms, but those that perform some sort of inline validation, should be using forms.

There are two tasks here (so far):

  1. Audit the admin views that use POST, determine how much inline validation they perform today, and add a subtask here with links
  2. Resolve each subtask as necessary

Finally, close out this issue when all subtasks are resolved.

Metadata

Metadata

Assignees

No one assigned

    Labels

    adminFeatures needed for the Admin UI (people running the site)data qualitypythonPull requests that update Python code

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions