Skip to main content

A set of little tools for aiohttp-based sites

Project description

It contains:

  • url_for - flask-like url reverser

  • jsonify - flask-like json-dumper with support of datetime, and ObjectId

  • redirect - django-like redirect

  • get_argument - tornado-like util to get GET / POST arguments

  • static_url - tornado-like url-wrapper to add version hast to static asset

  • flash - simple flash messages, usage described bellow

  • get_client_ip - client IP address

  • add_trailing_slash - middleware for adding trailing slash to unknown url

  • fix_host - middleware for redirect requests by IP to right domain

  • template_handler - handler that just render template

  • url_for_processor - context processor for using url_for without passing request

  • session_processor - context_processor for aiohttp_session

Look at the example folder for working example.

Installation

pip install aiohttp_tools

Repository: https://github.com/imbolc/aiohttp_tools

Flash messages

from aiohttp_tools.flash import flash

# you should include session middleware before flash middleware
aiohttp_session.setup(app, ...)
app.middlewares.append(aiohttp_tools.flash.middleware)
context_processors.append(aiohttp_tools.flash.context_processor)

async def handler(request):
    flash.message(request, 'Message', 'level')
    # shortcuts
    flash.info(request, 'Some message')
    flash.success(...)
    flash.warning(...)
    flash.error(...)
{% for message, level in get_flashed_messages() %}
    <div class="flash {{ level }}">
        {{ message }}
    </div>
{% endfor %}

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

aiohttp_tools-0.0.1.tar.gz (4.4 kB view hashes)

Uploaded Source

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