Skip to main content

Django one time link generator and processor

Project description

Django tool for create ont time links

Installation

For integrate with Django need to add ua2.otl to the list of installed app:

INSTALLED_APPS += (
        'ua2.otl')

and put into a root urls.py next line:

url(r'^l/', include('ua2.otl.urls'))

Be warning: include urls.py only compatibil with Django >= 1.8. For django before 1.8 need use following solution:

from ua2.otl.views import otl_view

urlpatterns = urlpatterns(
        .....
    url(r'^l/(?P<otp_key>\w+)/$', otl_view, name='one-time-link'),
)

Using

You can use OneTimeLink with several scenario:

  • redirect to view with django backresolve (with support callback)

  • redirect to direct URL (with support callback)

  • using view to redner response

Redirects

There are two way to pass resulted link to OneTimeLink object:

  • pass url resolve point with kwargs

  • pass rendered link

from ua2.otl import OneTimeLink

link = OneTimeLink.create(resolve_name='django-url-name', resolve_kwargs={'value': 1})
link.save(expire=3600)

Example with callback and authorization:

    from ua2.otl import OntTimeLink

    def auth_callback(request, user_email):
        user = get_object_or_404(User,
                             email=user_email)
        login(request, user)

@login_required
    def password_restore(request):
            ....

    def send_restore_passwortd(request):
            link = OneTimeLink.create(resolve_name='url-password-reset')
            link['user_email'] = request.POST.get('user_email')

            link.save(callback=auth_callback,
                              expire=3600,
                              count=1)

            return HttpResponse("http://127.0.0.1:8000%s" % link.url)

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

ua2.otl-0.0.5.tar.gz (4.5 kB view details)

Uploaded Source

File details

Details for the file ua2.otl-0.0.5.tar.gz.

File metadata

  • Download URL: ua2.otl-0.0.5.tar.gz
  • Upload date:
  • Size: 4.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.18.4 setuptools/39.0.1 requests-toolbelt/0.8.0 tqdm/4.19.8 CPython/2.7.16

File hashes

Hashes for ua2.otl-0.0.5.tar.gz
Algorithm Hash digest
SHA256 353559d604b509a2709f03b347cde018e8ab7d80be334260748734e0960e0d90
MD5 37e3fac07c4b0ec8d1aeaeb85681be3a
BLAKE2b-256 52debf869a932269f228ff35a7a8958e05c1a53f8c77bedfefb464210949a0be

See more details on using hashes here.

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