InvenTree/docs/docs
Oliver 2b9816d1a3
[Plugin] Enhanced custom validation (#6410)
* Use registry.get_plugin()

- Instead of registry.plugins.get()
- get_plugin checks registry hash
- performs registry reload if necessary

* Add PluginValidationMixin class

- Allows the entire model to be validated via plugins
- Called on model.full_clean()
- Called on model.save()

* Update Validation sample plugin

* Fix for InvenTreeTree models

* Refactor build.models

- Expose models to plugin validation

* Update stock.models

* Update more models

- common.models
- company.models

* Update more models

- label.models
- order.models
- part.models

* More model updates

* Update docs

* Fix for potential plugin edge case

- plugin slug is globally unique
- do not use get_or_create with two lookup fields
- will throw an IntegrityError if you change the name of a plugin

* Inherit DiffMixin into PluginValidationMixin

- Allows us to pass model diffs through to validation
- Plugins can validate based on what has *changed*

* Update documentation

* Add get_plugin_config helper function

* Bug fix

* Bug fix

* Update plugin hash when calling set_plugin_state

* Working on unit testing

* More unit testing

* Move get_plugin_config into registry.py

* Move extract_int into InvenTree.helpers

* Fix log formatting

* Update model definitions

- Ensure there are no changes to the migrations

* Comment out format line

* Fix access to get_plugin_config

* Fix tests for SimpleActionPlugin

* More unit test fixes
2024-02-06 22:00:22 +11:00
..
api correct Part uploadImage Parameter spelling (#5902) 2023-11-12 23:12:56 +11:00
app Sales order barcode allocate (#6072) 2023-12-14 11:13:50 +11:00
assets [WIP] Site ID Fixes (#6390) 2024-02-03 22:51:29 +11:00
barcodes Add basic support for scanning vendor barcodes (#5509) 2023-10-19 23:28:21 +11:00
build Version bump (#5740) 2023-10-18 07:27:28 +11:00
concepts Add database model for defining custom units (#5268) 2023-07-19 06:24:16 +10:00
develop [PUI] Login / Logout State Fixes (#6368) 2024-02-02 12:02:55 +11:00
extend [Plugin] Enhanced custom validation (#6410) 2024-02-06 22:00:22 +11:00
javascripts Documentation integration (#4653) 2023-04-22 22:40:29 +10:00
order Update docs to match reality (#5255) 2023-07-15 23:55:22 +10:00
part Part pricing override (#5956) 2023-11-21 14:53:45 +11:00
releases Simplify release notes docs (#5063) 2023-06-17 21:56:26 +10:00
report Fix some issues in report docs. (#5918) 2023-11-15 10:42:57 +11:00
settings SSO config docs (#6297) 2024-01-20 15:31:17 +11:00
start [WIP] Site ID Fixes (#6390) 2024-02-03 22:51:29 +11:00
stock Version bump (#5740) 2023-10-18 07:27:28 +11:00
stylesheets [Feature] Scrap Build Outputs (#4800) 2023-05-13 22:19:35 +10:00
webfonts Documentation integration (#4653) 2023-04-22 22:40:29 +10:00
__init__.py Fixes for docs building (#4659) 2023-04-22 23:35:25 +10:00
credits.md Remove support for django-debug-toolbar (#6196) 2024-01-11 07:18:20 +11:00
demo.md Documentation integration (#4653) 2023-04-22 22:40:29 +10:00
faq.md Update invoke docs (#6263) 2024-01-17 12:36:24 +11:00
features.md Company docs updates (#4710) 2023-04-27 22:27:21 +10:00
hooks.py [CI] docstrings (#6172) 2024-01-11 14:40:07 +11:00
index.md Documentation integration (#4653) 2023-04-22 22:40:29 +10:00
privacy.md Documentation integration (#4653) 2023-04-22 22:40:29 +10:00