Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature/464 permission admin view slow #508

Merged
merged 17 commits into from
Jan 30, 2025

Conversation

danielmursa-dev
Copy link
Contributor

@danielmursa-dev danielmursa-dev commented Dec 31, 2024

Fixes #464

An internal administration endpoint admin/core/objecttype/<objecttype_id>/_versions/ was created to retrieve all versions related to the objecttype.

Then the FE part was modified, so that each time an objecttype is modifie/selected, it call a new request to the endpoint.

Copy link
Collaborator

@stevenbal stevenbal left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I was thinking of the following to make it possible to fetch the fields via the frontend (such that the form doesn't have to be saved to fetch them):

  • make an endpoint on the admin (that requires admin authentication) that performs the request for a specific object_type_id to retrieve the data_fields (e.g. /admin/objecttypes/<id>). That way we don't have to expose the token to the frontend and we only need to pass the id to the frontend
  • in react, call this new endpoint for the currently selected objecttype and display the result

@annashamray what do you think about this?

Copy link
Collaborator

@stevenbal stevenbal left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good overall, some minor questions/remarks

src/objects/core/admin.py Show resolved Hide resolved
src/objects/core/admin.py Outdated Show resolved Hide resolved
src/objects/core/admin.py Outdated Show resolved Hide resolved
src/objects/core/admin.py Outdated Show resolved Hide resolved
@danielmursa-dev danielmursa-dev requested review from stevenbal and removed request for alextreme January 27, 2025 13:19
Copy link
Collaborator

@annashamray annashamray left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

One thing I've noticed now, but it's been implemented like this since the beginning:

The state of selected fields is not tracked:
If you change the objecttype in the dropdown and then change it back, the fields previous will not be selected, even if they are saved in the DB
Screencast from 28-01-25 16:32:04.webm

It's been like this probably forever, so could you please create an issue to fix it?
No need to fix it in this PR, but some cleanup would be nice

src/objects/core/admin.py Show resolved Hide resolved
src/objects/tests/admin/test_core_views.py Outdated Show resolved Hide resolved
Copy link
Collaborator

@annashamray annashamray left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please create an issue for keeping track of selected fields after changing the objecttype

Copy link
Collaborator

@stevenbal stevenbal left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Some minor comments about the tests, looks good otherwise

src/objects/tests/admin/test_core_views.py Outdated Show resolved Hide resolved
src/objects/tests/admin/test_core_views.py Outdated Show resolved Hide resolved
src/objects/tests/admin/test_core_views.py Outdated Show resolved Hide resolved
@danielmursa-dev danielmursa-dev merged commit 014cfe2 into master Jan 30, 2025
15 checks passed
@danielmursa-dev danielmursa-dev deleted the feature/464-permission-admin-view-slow branch January 30, 2025 13:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Objecten API: Permission admin view is slow
3 participants