https://github.com/clarin-eric/djangoarrayfield
Simple reusable Django application extending core Django JSONField to provide abstract functionality of an ArrayField.
https://github.com/clarin-eric/djangoarrayfield
Last synced: 5 months ago
JSON representation
Simple reusable Django application extending core Django JSONField to provide abstract functionality of an ArrayField.
- Host: GitHub
- URL: https://github.com/clarin-eric/djangoarrayfield
- Owner: clarin-eric
- License: gpl-3.0
- Created: 2023-03-28T15:54:58.000Z (about 3 years ago)
- Default Branch: main
- Last Pushed: 2023-04-13T14:41:49.000Z (about 3 years ago)
- Last Synced: 2025-10-28T15:51:41.921Z (8 months ago)
- Language: Python
- Size: 48.8 KB
- Stars: 0
- Watchers: 5
- Forks: 0
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE.txt
Awesome Lists containing this project
README
# DjangoArrayField
Reusable Django application providing generic array field `DjangoArrayField[T]`. `T` supports Django built-ins and Django serializable objects initializable from **kwargs.
### Installation
##### PyPi:
```shell
pip install django-arrayfield
```
#### from source:
```sh
git clone https://github.com/clarin-eric/djangoarrayfield
pip install ./djangoarrayfield
```
### Testing
In order to run tests Django test configuration has to be installed as well. To run tests:
```shell
pip install ./djangoarrayfield/tests/
export DJANGO_SETTINGS_MODULE=test_arrayfield_django_conf.settings
python ./djangoarrayfield/tests/manage.py makemigations
python ./djangoarraygield/tests/manage.py test djangoarrayfield
```
### Usage
Example model using parametrized `DjangoArrayField`:
```python
from django.db import models
from djangoarrayfield import DjangoArrayField
class ExampleModel(models.Model):
str_arrayfield: DjangoArrayField[str] = DjangoArrayField[str](name="test_array_field_str",
verbose_name="ArrayField[str] testing field")
int_arrayfield: DjangoArrayField[int] = DjangoArrayField[int](name="test_array_field_int",
verbose_name="ArrayField[int] testing field")
obj_arrayfield: DjangoArrayField[YourObject] = DjangoArrayField[YourObject](
name="test_array_field_obj",
verbose_name="ArrayField[YourObject] testing field")
```
### Compatibility
Currently supported (has been tested, not listed does not imply incompatibility)
##### Python
3.10, 3.11
##### Django:
4.1.7
#### DB backends:
###### Sqlite 3:
3.41.1
### License
DjangoArrayField is Open Source package created for internal usage at CLARIN-ERIC distributed to the public under [GPLv3](LICENSE.txt)