Abhishek Roka
Abhishek Roka

Turning Django Admin into a Company Dashboard and Completing My Placement Portal MVP

Today, I completed the foundational MVP of my Placement Portal.

The final step was customizing Django Admin to behave differently for Company users.

Initially, I had two approaches:

  1. Override Django Admin templates.
  2. Customize the Admin classes themselves.

I decided to go with the second approach because it is significantly lighter and easier to maintain.

Custom Company Dashboard

By overriding the changelist_view() method:

The flow looks like this:

Company User → Company Admin → Redirect → Company Profile Update Page

This provides a dashboard-like experience without building an entirely new frontend.

Fieldset Customization

The next problem was restricting which fields Company users can edit.

By overriding the get_fieldsets() method:

For example:

This keeps the interface simple while preventing accidental or unauthorized modifications.

Why Customize Django Admin?

Building a separate dashboard would require:

Django Admin already provides:

Leveraging existing tools allowed me to finish the MVP faster while maintaining security and usability.

MVP Foundation Completed

With this implementation, the foundational MVP of my Placement Portal is complete.

The next major milestones are:

Building the MVP foundation taught me that shipping a working system is often more valuable than building every possible feature before launch.