Using Translated Slugs In Views — Django-parler 2.3 Documentation

django-parler stable
  • Quick start guide
  • Configuration options
  • Template tags
  • Performance guidelines
  • Advanced usage patterns
    • Translations without fallback languages
    • Using translated slugs in views
    • Making existing fields translatable
    • Adding translated fields to an existing model
    • Integration with django-mptt
    • Integration with django-polymorphic
    • Integration with django-guardian
    • Integration with django-rest-framework
    • Multi-site support
    • Disabling caching
    • Parler on more sites with same cache
    • Constructing the translations model manually
    • Customizing language settings
  • Django compatibility
  • Background
  • API documentation
  • Changelog
django-parler
  • Docs »
  • Advanced usage patterns »
  • Using translated slugs in views
  • Edit on GitHub
Using translated slugs in views¶

To handle translatable slugs in the DetailView, the TranslatableSlugMixin can be used to make this work smoothly. For example:

class ArticleDetailView(TranslatableSlugMixin, DetailView): model = Article template_name = 'article/details.html'

The TranslatableSlugMixin makes sure that:

  • The object is fetched in the proper translation.
  • The slug field is read from the translation model, instead of the shared model.
  • Fallback languages are handled.
  • Objects are not accidentally displayed in their fallback slugs, but redirect to the translated slug.

Từ khóa » đan Slug