Fix/redundant sql query during ca cert creation #170
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Checklist
Reference to Existing Issue
Closes #168 .
Description of Changes
[base/models] Avoid redundant SQL write query during CA/Cert creation
Refactored the save() method to simplify logic and avoid unnecessary SQL write queries during CA/Certificate creation. Additionally, the test case in
django_x509/tests/test_cert.py
was updated to utilizeassertNumQueries
, ensuring a reduction in database queries is verified automatically.Fixes #168.
Screenshot
Please include any relevant screenshots.
![test-cases-for-save-method-no-errors-regarding](https://private-user-images.githubusercontent.com/134408638/398499088-310a8af3-319c-48a1-a366-eeb77a42c200.jpg?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mzk2ODM2MzMsIm5iZiI6MTczOTY4MzMzMywicGF0aCI6Ii8xMzQ0MDg2MzgvMzk4NDk5MDg4LTMxMGE4YWYzLTMxOWMtNDhhMS1hMzY2LWVlYjc3YTQyYzIwMC5qcGc_WC1BbXotQWxnb3JpdGhtPUFXUzQtSE1BQy1TSEEyNTYmWC1BbXotQ3JlZGVudGlhbD1BS0lBVkNPRFlMU0E1M1BRSzRaQSUyRjIwMjUwMjE2JTJGdXMtZWFzdC0xJTJGczMlMkZhd3M0X3JlcXVlc3QmWC1BbXotRGF0ZT0yMDI1MDIxNlQwNTIyMTNaJlgtQW16LUV4cGlyZXM9MzAwJlgtQW16LVNpZ25hdHVyZT02MjhiYTBlNDE5OTgzYzE4Nzg1M2Q2ZjM5NDQyZWEyMmYxOGZiM2EyNzVlMjUwOWIwOWZiYmUwMTM0OTkzZmI5JlgtQW16LVNpZ25lZEhlYWRlcnM9aG9zdCJ9.a4nUMDMR8TNV5IxEFdjGJM2Xwhqqo2Yuz6-bES82x2g)
![assertNumQueries-test-case-solved](https://private-user-images.githubusercontent.com/134408638/398499099-4cf2ef40-a0a1-43f2-b1c7-bf61c18d6f54.jpg?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mzk2ODM2MzMsIm5iZiI6MTczOTY4MzMzMywicGF0aCI6Ii8xMzQ0MDg2MzgvMzk4NDk5MDk5LTRjZjJlZjQwLWEwYTEtNDNmMi1iMWM3LWJmNjFjMThkNmY1NC5qcGc_WC1BbXotQWxnb3JpdGhtPUFXUzQtSE1BQy1TSEEyNTYmWC1BbXotQ3JlZGVudGlhbD1BS0lBVkNPRFlMU0E1M1BRSzRaQSUyRjIwMjUwMjE2JTJGdXMtZWFzdC0xJTJGczMlMkZhd3M0X3JlcXVlc3QmWC1BbXotRGF0ZT0yMDI1MDIxNlQwNTIyMTNaJlgtQW16LUV4cGlyZXM9MzAwJlgtQW16LVNpZ25hdHVyZT0zMDAzYjY2MjQwNTBhNTA2YzNmM2Q4ZGFmY2U4OTc0ZGJjOTA3ZmUwN2EwMTlkYTdiNjc2NDgyNTE4MmE5NTVlJlgtQW16LVNpZ25lZEhlYWRlcnM9aG9zdCJ9.3HCTkLbENDMm3VytFU_NPJ_bTOIlmHbpevVLHFPBbSA)