Skip to content

Releases: krystofbe/django-tomselect2

v0.1.4 - Fix non-existent CSS reference

14 Oct 08:40

Choose a tag to compare

Fixed

  • Removed reference to non-existent django_tomselect.css file that was causing potential issues with widget media loading
  • Updated documentation to correctly reflect that only the JavaScript integration file is included

Full Changelog: v0.1.3...v0.1.4

v0.1.3

01 Oct 14:27

Choose a tag to compare

Bug Fixes

  • Fixed Ajax parameter name from 'q' to 'term' to match Select2.js standard and Python backend expectations

Heavy Widget Auto-Loading Support (v0.1.2)

05 Sep 14:46

Choose a tag to compare

🎉 Heavy widgets now load automatically when opened!

✨ New features

  • Auto-loading on focus: Heavy widgets immediately display initial results when clicked
  • Better UX: Users don't have to tap first to see available options
  • Smart pagination: Loads a maximum of 25 results initially by default (configurable)
  • Fully configurable: Old behavior still possible via settings

🔧 Technical changes

  • Default settings: preload: ‘focus’ and openOnFocus: true for Heavy Widgets
  • shouldLoad(): Allows empty queries for initial loading
  • Documentation: Extended configuration options in docs/extra.rst
  • Performance: Pagination prevents overload with large data sets

📖 Usage

# Default - loads automatically on opening (NEW)
widget = ModelTomSelectWidget(data_view=author_autocomplete”)

# Old behavior - disables auto-loading
widget = ModelTomSelectWidget(
    data_view="author_autocomplete",
    tom_select_settings={‘preload’: False, ‘minLength’: 1}
)

# Adjust number of initial results
widget = ModelTomSelectWidget(
    data_view="author_autocomplete", 
    max_results=10)

🆙 Breaking Changes

None! The new behavior is a UX improvement with backward compatibility.

🙏 Migration from django-select2

This version significantly improves the user experience and makes Heavy Widgets more intuitive to use. Users can now immediately see which options are available.

v0.1.1 - Author Update

30 Jun 08:41

Choose a tag to compare

Pre-release

django-tomselect2 v0.1.1

Changes

  • Updated author information in package metadata

Installation

pip install django-tomselect2==0.1.1

Documentation

Full documentation available at: https://django-tomselect2.readthedocs.io/

v0.1.0 - Initial Beta Release

30 Jun 07:28

Choose a tag to compare

Pre-release

django-tomselect2 v0.1.0 - Initial Beta Release

This is the first beta release of django-tomselect2, a Django integration for Tom Select - a lightweight, vanilla JavaScript autocomplete library.

🎯 Highlights

  • Modern JavaScript: Built on Tom Select, no jQuery dependency required
  • Django Integration: Seamless integration with Django forms and models
  • HTMX Support: Out-of-the-box HTMX integration for dynamic content
  • Customizable: Full control over Tom Select themes and assets
  • Well Tested: 96% test coverage with comprehensive test suite

⚠️ Beta Notice

This is a beta release. While the core functionality is stable and well-tested, we recommend thorough testing before using in production environments.

📦 Installation

pip install django-tomselect2==0.1.0

📚 Documentation

Full documentation available at: https://django-tomselect2.readthedocs.io/

🙏 Acknowledgments

Special thanks to Johannes Maron (codingjoe) for his prior work on django-select2, which inspired this project.

🐛 Feedback

Please report any issues at: https://github.com/krystofbe/django-tomselect2/issues