A Django-Ninja backend to specify FormKit schemas
Project description
Formkit-Ninja
A Django-Ninja framework for FormKit schemas and form submissions
Why
FormKit out of the box has awesome schema support - this lets us integrate FormKit instances as Django models
- Upload / edit / download basic FormKit schemas
- Translated "option" values from the Django admin
- Reorder "options" and schema nodes
- List and Fetch schemas for different form types
Use
To use, pip install formkit-ninja and add the following to settings INSTALLED_APPS:
INSTALLED_APPS = [
...
"formkit_ninja",
"ninja",
...
]
Test
Pull the repo:
gh repo clone catalpainternational/formkit-ninja
cd formkit-ninja
uv sync
uv run pytest
Playwright
Some tests require playwright. Do:
uv run playwright install
Lint
uv run black --check .
uv run isort --check .
uv run flake8 .
Updating 'Protected' Nodes
If a node's been protected you cannot change or delete it. To do so, you'll need to temporarily disable the trigger which is on it.
./manage.py pytrigger disable protect_node_deletes_and_updates
Make changes
./manage.py pgtrigger enable protect_node_deletes_and_updates
See the documentation for more details: https://django-pgtrigger.readthedocs.io/en/2.3.0/commands.html?highlight=disable
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file formkit_ninja-0.8.1.tar.gz.
File metadata
- Download URL: formkit_ninja-0.8.1.tar.gz
- Upload date:
- Size: 497.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.22 {"installer":{"name":"uv","version":"0.9.22","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5746a8b2b4f34a45bf1d5d03ac24914cf721a9b53af83b0acfaef1d02a09cbe1
|
|
| MD5 |
3e8eba0c55661b7d2817aa38dd2e8ba4
|
|
| BLAKE2b-256 |
af330a095bad1ef2d44e4528e3c9602d269b72b45490c9aef4dd4e0e6c661fc2
|
File details
Details for the file formkit_ninja-0.8.1-py3-none-any.whl.
File metadata
- Download URL: formkit_ninja-0.8.1-py3-none-any.whl
- Upload date:
- Size: 314.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.22 {"installer":{"name":"uv","version":"0.9.22","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b8c91cdb956a45fc154f566d5a1d5f8d3185064e2effc7776f9daeed14098de3
|
|
| MD5 |
ba75db76e771a1c06ac37ff58abba4ba
|
|
| BLAKE2b-256 |
8190f17bedb8ecef0ce61e1038c22d560bacd2af2fe0f52a2caa01a2f3c44ee3
|