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.0.tar.gz
(556.7 kB
view details)
File details
Details for the file hope_flex_fields-0.6.0.tar.gz
.
File metadata
- Download URL: hope_flex_fields-0.6.0.tar.gz
- Upload date:
- Size: 556.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.12.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a1cc773890282bcb58ac156ae72e85149244227162e883b128555bb2183d2e8e |
|
MD5 | 707a14616abfaa5498289ff1049d472c |
|
BLAKE2b-256 | 868bca1e7ed2e5c4ebbfba6f204dad6d897ce82dd1dab5f875446d5467f2b170 |