Skip to main content

A Django app providing a ChunkedTextField for storing large text data in chunks.

Project description

Django Chunked Field

This project provides a custom Django field, ChunkedTextField, designed to handle large text data by splitting it into manageable chunks for storage in a separate database table. Unlike traditional text fields, which may face size limitations in certain database systems, ChunkedTextField bypasses these constraints while seamlessly integrating with Django's ORM. It works transparently with serializers, admin interfaces, and other ORM features, allowing developers to store and retrieve large text data without changing their application logic. The field is particularly useful in applications requiring efficient management of text data exceeding database limits, ensuring scalability and ease of use.

Features

  • Store large text data exceeding database field size limits.
  • Seamlessly integrates with Django's admin and ORM.
  • Customizable truncation for admin display.

Installation

  1. Install the package using pip:

    pip install django-chunked-field
    
  2. Add chunked_field to your INSTALLED_APPS in your Django settings:

    INSTALLED_APPS = [
        ...
        'chunked_field',
    ]
    
  3. Run the migrations to create the necessary database tables:

    python manage.py migrate
    

Usage

Defining a Model

To use the ChunkedTextField, define it in your model as follows:

from django.db import models
from chunked_field.fields import ChunkedTextField


class MyModel(models.Model):
   large_text = ChunkedTextField(truncate_length=100, chunk_size=4000)

Admin Integration

To display the DataChunk model in the Django admin, register it in admin.py:

from django.contrib import admin
from chunked_field.models import DataChunk


@admin.register(DataChunk)
class DataChunkAdmin(admin.ModelAdmin):
   list_display = ('content_type', 'object_id', 'field_name', 'sequence')
   list_filter = ('content_type', 'field_name')
   search_fields = ('content',)

Signal Handlers

The ChunkedTextField automatically handles the chunking and reassembly of data using Django signals. You do not need to manually manage these operations.

License

This project is licensed under the MIT License.


This update includes installation instructions, usage examples, and admin integration details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

django_chunked_field-0.0.5.tar.gz (10.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

django_chunked_field-0.0.5-py3-none-any.whl (13.9 kB view details)

Uploaded Python 3

File details

Details for the file django_chunked_field-0.0.5.tar.gz.

File metadata

  • Download URL: django_chunked_field-0.0.5.tar.gz
  • Upload date:
  • Size: 10.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.8.10

File hashes

Hashes for django_chunked_field-0.0.5.tar.gz
Algorithm Hash digest
SHA256 eba1315c4a06547d8f16e71fe75663578212af9310559ad2d1f7fed4059c4e8b
MD5 8d16252fb24fd32b99a3a056ae852f36
BLAKE2b-256 1093156db44762f48135787d06b8344b74783616c491c899874efa1f4722c48b

See more details on using hashes here.

File details

Details for the file django_chunked_field-0.0.5-py3-none-any.whl.

File metadata

File hashes

Hashes for django_chunked_field-0.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 a36c93c14b335e6e4a9a0ff8277abce0b58f7762c624ed87df414b84a32406ea
MD5 c585936de4e81de339bac7b697190f47
BLAKE2b-256 ce69fc74ca216e0da16e169b9ee2aea664d4d3fe8b94dad5cd49c140e95ac4ce

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page