No project description provided
Project description
HOPE FlexFields
This library provides the ability to define a set of fields and related validation rules dynamically. It has been designed as part of the HOPE project to manage user-customizable fields (FlexField). The idea is to have a central business logic repository for data import validation.
It provides four classes:
- FieldDefinition: This represents a collection of reusable pre-configured fields
- FlexField: Instance like representation of
FieldDefinition
inside aFieldset
- Fieldset: Group of FlexField
- DataChecker: Compound of fieldset
From the design point of view a high level comparison with Django components could be:
FieldDefinition
=class forms.Field
Fieldset
=forms.Form
FlexField
=forms.Field()
DataChecker
=[forms.Form(),...]
... and some utilities
- Automatic creation of FieldSets inspecting exiting models
- Automatic creation of XLS file matching an existing Datachecker
- Validate XLS against an existing Datachecker
classDiagram
class AbstractField
class FieldDefinition
class FlexField
class Fieldset
class DataChecker
AbstractField <|-- FlexField
AbstractField <|-- FieldDefinition
Fieldset *-- FlexField
FlexField --> FieldDefinition
DataChecker o-- Fieldset
Install
CSP_SCRIPT_SRC = [
...
"cdnjs.cloudflare.com",
]
INSTALLED_APPS = [
...
'admin_extra_buttons',
'jsoneditor',
'hope_flex_fields',
]
Demo Application
python manage.py migrate
python manage.py demo
python manage.py runserver
Navigate to http://localhost:8000/admin/ and login using any username/password
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
hope_flex_fields-0.6.2.tar.gz
(556.1 kB
view details)
File details
Details for the file hope_flex_fields-0.6.2.tar.gz
.
File metadata
- Download URL: hope_flex_fields-0.6.2.tar.gz
- Upload date:
- Size: 556.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.12.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9d1f50f81f62d43d8467e1647bd15ac440f3e83442f2e579b8f3f5a81053d5b4 |
|
MD5 | df7b137906d2251ef53a4a91d6aea8d1 |
|
BLAKE2b-256 | f85f873790d74f692083a232ef43483d34e6175c910655459e71ac0af32cec7e |