Skip to main content

Mixins for use into the AX3 tech stack

Project description

AX3 mixins

Mixins for use into the AX3 tech stack.

AjaxRequestMixin

Useful when you need a view only for AJAX queries:

from ax3_mixins import mixins

class AjaxView(mixins.AjaxRequestMixin, View):
    def post(self, request, *args, **kwargs):
        # Only get here if was called by an AJAX request.
        ...

SlugIdMixin

Allows a view to support smart urls with slug and ids.

At urls use:

path('leer/<slug:slugid>/', views.PageDetailView.as_view(), name='page_detail'),

At views use:

from ax3_mixins import mixins

class PageDetailView(mixins.SlugIdMixin):
    template_name = 'app/page_detail.html'
    queryset = Page.objects.filter(is_active=True)

At models use:

def get_absolute_url(self):
    return reverse('page_detail', args=[f'{self.slug}-{self.id}'])

This mixin will get the object using the id and redirect to the current object slug if is different from the URL. It will add the object to the template context.

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

AX3 Mixins-1.0.1.tar.gz (2.2 kB view hashes)

Uploaded Source

Built Distribution

AX3_Mixins-1.0.1-py3-none-any.whl (3.3 kB view hashes)

Uploaded Python 3

Supported by

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