A mail sending library for keg applications
Project description
Keg-Mail is a basic wrapper around Flask-Mail which gives some added support for templates.
It is not finished by any means and in some ways provides little additional benefit over Flask-Mail.
Usage
$ pip install keg-mail
Initialize Keg-Mail in you application
import flask
import keg_mail
from keg.signals import app_ready
from keg import Keg
bp = flask.blueprint('main', __name__)
mail = keg_mail.KegMail()
class App(Keg):
use_blueprints = [bp]
Initialize the extension with the application
@app_ready.connect
def init_extensions(app):
"""Init custom extensions used by this application"""
mail.init_app(app)
Define email content
import keg_mail
hello_world_content = keg_mail.EmailContent(
text='Hello {name}!'
html='<h1>Hello {name}!</h1>'
)
Send the email
from app import mail
import app.emails as emails
import keg_mail
bp.route('/')
def index():
mail.send(
'you@something.com'
keg_mail.Email(
subject="Hello {name}!",
content=emails.hello_world_content,
).format(name='You")
)
Test the email
from app import mail
def test_send_mail():
with mail.record_messages() as outbox:
resp = app.test_client.get('/')
assert len(outbox) == 1
assert outbox[0].subject == "Hello You!"
assert outbox[0].body == "Hello You!"
Changelog
0.2.2 released 2020-07-22
Fix bug in LogStatusWebhook view mixin (8a3ffde)
0.2.1 released 2020-07-22
Add support for Mailgun REST API and message status tracking (b3b4428)
0.2.0 released 2020-04-14
Support Python 3.8 (bfbb945)
0.1.0 - 2017-03-23
Initial Release
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
Keg-Mail-0.2.2.tar.gz
(14.9 kB
view details)
Built Distribution
File details
Details for the file Keg-Mail-0.2.2.tar.gz
.
File metadata
- Download URL: Keg-Mail-0.2.2.tar.gz
- Upload date:
- Size: 14.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.23.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.48.0 CPython/3.7.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e5a0e2bf6aaf239d9c67df51d874d7323f10ddd9b7b4b7b38a3f05bb2f5f99b8 |
|
MD5 | beb20736b41d8bac83f2d43e825be7b9 |
|
BLAKE2b-256 | c43a5e858143efec2e2455bb02e1b9cdf2d185bc62e71fb4165f2e5bdc8ee5a8 |
Provenance
File details
Details for the file Keg_Mail-0.2.2-py2.py3-none-any.whl
.
File metadata
- Download URL: Keg_Mail-0.2.2-py2.py3-none-any.whl
- Upload date:
- Size: 19.1 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.23.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.48.0 CPython/3.7.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2fb8f5a3d8243454768025d15dc303bc5d18254040cdc658520b2c653b311589 |
|
MD5 | 4b55f1d1d415d541c75ff844acd67d54 |
|
BLAKE2b-256 | 28e473f7002a2fc1f5eca41c30c5d89499c1aa9b4cb436de11ef2f80f098495d |