本文整理汇总了Python中flask_mail.Mail类的典型用法代码示例。如果您正苦于以下问题:Python Mail类的具体用法?Python Mail怎么用?Python Mail使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了Mail类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: registration_user
def registration_user():
data = request.get_json(force=True)
if not User().check_mail_for_uniqueness(data['email']):
return hook_validation_error('Email already exists. Please register with a new email.')
elif not User().check_unique_username(data['username']):
return hook_validation_error('Username already exists, please try another username')
else:
user = datastore.create_user(email=data['email'], password=data['password'])
user.set_password(data['password'])
user.active = False
user.username = data['username']
db.session.commit()
email_token = generate_confirmation_token(user.email)
confirm_url = url_for('.confirm_email', token=email_token, _external=True)
mail = Mail()
msg = Message("Please confirm your account", sender="[email protected]", recipients=[user.email])
msg.body = render_template(
"email/confirmation_email.txt",
confirmation_url=confirm_url,
user=user
)
msg.html = render_template(
"email/confirmation_email.html",
confirmation_url=confirm_url,
user=user
)
mail.send(msg)
return jsonify({
'id': user.id,
'message': 'User successfully created, please check your email to activate your account'
})
示例2: email_errors
def email_errors():
beginningform = TimeForm(request.form)
endform = TimeForm(request.form)
if request.method == 'POST':
beginning = beginningform.year + beginningform.month + beginningform.day + beginningform.hour + beginningform.min + beginningform.sec
end = endform.year + endform.month + endform.day + endform.hour + endform.min + endform.sec
begformatted = "%s/%s/%s %s:%s:%s" %(beginningform.month, beginningform.day, beginningform.year, beginningform.hour, beginningform.min, beginningform.sec)
endformatted = "%s/%s/%s %s:%s:%s" %(endform.month, endform.day, endform.year, endform.hour, endform.min, endform.sec)
report = "Between %s and %s, the following errors occurred:\n" %(begformatted, endformatted)
errorcount = error_handling.count_errors(int(beginning), int(end))
for error in errorcount:
report += "%d of error \"%s\"\n" %(errorcount[error], error_handling.db.lindex(error, 0))
# move this to mail module
ADMINS = ["[email protected]"]
msg = Message("Error Aggregation Report", sender = "[email protected]", recipients = ADMINS)
msg.body = report
mail = Mail(app)
mail.send(msg)
return render_template('email_errors.html', form = beginningform)
elif request.method == 'GET':
return render_template('email_errors.html')
示例3: hubs_add
def hubs_add():
form = HubForm(request.form)
if request.method == "POST" and form.validate_on_submit():
hub = Hubs()
form.populate_obj(hub)
db.session.add(hub)
db.session.commit()
flash("Hub Created")
if app.config.get('MAIL_SERVER', None):
mail = Mail(app)
body = render_template('hubs_email.txt.j2', form=form, hub=hub)
msg = Message(subject="New Hub submitted",
body=body,
sender="[email protected]",
recipients=[app.config.get('MAIL_TO', None)])
try:
mail.send(msg)
except Exception as e:
app.logger.error(e)
return redirect(url_for("wheel_add_hub", hub_id=hub.id))
else:
for e in form.errors.items():
flash(f"{e[0]} - {e[1][0]}")
return render_template('hubs_add.html.j2',
form=form)
示例4: reset
def reset():
if current_user.is_authenticated:
return redirect(url_for("index"))
form = EmailForm()
if form.validate_on_submit():
agency = Agency.query.filter_by(email=form.email.data).first_or_404()
subject = "Password reset requested."
token = ts.dumps(agency.email, salt='recover-key')
recover_url = url_for('reset_with_token', token=token, _external=True)
html = 'hello ' + recover_url
from flask_mail import Mail, Message
mail = Mail()
mail.init_app(app)
msg = Message("hello",
sender="[email protected]",
recipients=["[email protected]"])
msg.html = html
mail.send(msg)
flash('An email has been sent to ' + agency.email +
' with a password reset link.')
return redirect(url_for("login"))
return render_template('reset.html', form=form)
示例5: execute
def execute(self, **kwargs):
"""
Send email message
"""
from . import actions
with self.act_manager.app.app_context():
if self.act_manager.app.debug == True:
msg = Message(sender='[email protected]')
for func in [getattr(self, aa) for aa in dir(self) if aa.startswith('get_')]:
result = func(**kwargs)
if result:
head, sep, tail = func.__name__.partition('_')
if tail == 'attachments':
for attachment in result:
msg.add_attachment(attachment)
else:
setattr(msg, tail, result)
mail = Mail(self.act_manager.app)
mail.connect()
mail.send(msg)
if self.log_mail:
"""
Log email to a table with a timestamp. Note, for attachements, don't only log the
file name and content_type, not the data.
"""
pass
return
示例6: send_mail
def send_mail(app, form):
"""
Send email confirmation of an RSVP response,
both to myself and to the guest. If DEBUG
is enabled, send responses to a testing
address instead.
"""
mail = Mail(app)
msg = Message("Thanks for your RSVP!",
sender="[email protected]",
reply_to="Daven and Beth <[email protected]>",
extra_headers={"From":"Daven and Beth via davenquinn.com <[email protected]>"})
if app.config["DEBUG"]:
msg.recipients = ['[email protected]']
else:
msg.recipients = [form["email"]]
msg.bcc = ["[email protected]"]
_ = partial(render_template,
form=form,
attending=int(form["number"]) > 0)
msg.body = _("wedding/email/thanks.txt")
msg.html = _("wedding/email/thanks.html")
mail.send(msg)
示例7: send_email
def send_email(self, register_user):
"""
Method for sending the registration Email to the user
"""
try:
from flask_mail import Mail, Message
except:
log.error("Install Flask-Mail to use User registration")
return False
mail = Mail(self.appbuilder.get_app)
msg = Message()
msg.subject = self.email_subject
url = url_for('.activation', _external=True, activation_hash=register_user.registration_hash)
msg.html = render_template(self.email_template,
url=url,
username=register_user.username,
first_name=register_user.first_name,
last_name=register_user.last_name)
msg.recipients = [register_user.email]
try:
mail.send(msg)
except Exception as e:
log.error("Send email exception: {0}".format(str(e)))
return False
return True
示例8: Email
class Email(object):
def __init__(self, app):
self.app = app
self.mail = Mail(app)
def send_welcome(self, user, passwd):
subject = 'Bem vindo ao garupa.com!'
recipients = [user.get_email()]
body = 'Oi %s,\n' % user.get_name()
body += 'Sua conta no garupa.com foi criada com sucesso!\n\n'
body += 'Sua matricula: %s\n' % user.get_uid()
body += 'Sua senha: %s (nao va perder em?)\n' % passwd
self.send(subject, recipients, body)
def send_recover_passwd(self, user, passwd):
subject = 'Tua senha! Criatura esquecida!'
recipients = [user.get_email()]
body = 'Oi %s,\n' % user.get_name()
body += 'Esquecesse tua senha num foi?\n'
body += 'Sua senha nova: %s (nao vai esquecer de novo em?)' % passwd
self.send(subject, recipients, body)
def send(self, subject, recipients, text_body):
msg = Message(subject, recipients=recipients)
msg.body = text_body
thr = Thread(target=self.send_async, args=[msg])
thr.start()
def send_async(self, msg):
with self.app.app_context():
self.mail.send(msg)
示例9: callmeCreate
def callmeCreate():
jsonData = request.get_json(force=True)
if not (jsonData and 'name' in jsonData and 'phone' in jsonData): #check not-nullable fields
abort(400)
#set gmail settings
app.config.update(
MAIL_SERVER='smtp.gmail.com',
MAIL_PORT=465,
MAIL_USE_SSL=True,
MAIL_USERNAME='[email protected]',
MAIL_PASSWORD=MAIL_PASS,
MAIL_DEFAULT_SENDER=('ВИССОН', '[email protected]')
)
mail = Mail(app)
#and send email to me
try: #send to buyer
msg = Message("ВИССОН", recipients=["[email protected]"])
msg.html = "Заявка перезвонить <br> имя: %s <br> номер: %s <br>" % (jsonData.get("name"), jsonData.get("phone"))
mail.send(msg)
except BaseException as e:
print(str(e))
abort(400)
return str(True)
示例10: create_app
def create_app(config=None):
app = Flask(__name__)
# load configuration
if config:
app.config.from_object(config)
else:
app.config.from_object('rhiz.config.Default')
app.config.from_envvar('RHIZ_APPLICATION_SETTINGS')
security = Security()
security.init_app(app, user_datastore)
assets.init_app(app)
db.init_app(app)
admin.init_app(app)
mail = Mail()
mail.init_app(app)
feature_flag = FeatureFlag()
feature_flag.init_app(app)
# register routes
register_blog_routes(app)
return app
示例11: send_mail
def send_mail(recipient,hash_code):
mail = Mail(app)
msg = Message("Your python snippet",sender="[email protected]",recipients=[recipient])
msg.html = render_template("email.html",emailid=recipient.split('@')[0],link="http://pypad.herokuapp.com/get/"+hash_code)
mail.send(msg)
示例12: sendMail
def sendMail(self, app, form):
app.config['MAIL_SERVER']='smtp.gmail.com'
app.config['MAIL_PORT'] = 465
app.config['MAIL_USERNAME'] = Constants.ADMIN_MAIL_ADDR
app.config['MAIL_PASSWORD'] = Constants.ADMIN_MAIL_PASS
app.config['MAIL_USE_TLS'] = False
app.config['MAIL_USE_SSL'] = True
mail = Mail(app)
#generate encrypt key
encryptkey = Script.encode(form['mail'])
# read file and prepare mail body
txtBody = ''
with open(Constants.MAIL_TEMPLATE_FILE) as f:
content = f.readlines()
#content = [x.strip() for x in content]
for row in content:
row = row.replace("%ACTIVATION_LINK%", "http://localhost/activate?mail={0}&encryptkey={1}".format(form['mail'], encryptkey))
row = row.replace("%MAIL_ADDRESS%", form['mail'])
row = row.replace("%FIRSTNAME%", form['firstname'])
row = row.replace("%REGISTRATION_DATE%", strftime("%Y-%m-%d %H:%M:%S", gmtime()))
txtBody +=row
msg = Message('Registration', sender = Constants.ADMIN_MAIL_ADDR, recipients = [form['mail']])
msg.body = txtBody
mail.send(msg)
示例13: rims_add
def rims_add():
form = RimForm(request.form)
if request.method == "POST" and form.validate_on_submit():
rim = Rims()
form.populate_obj(rim)
db.session.add(rim)
db.session.commit()
flash("Rim Created")
if app.config.get('MAIL_SERVER', None):
mail = Mail(app)
body = render_template('rims_email.txt.j2', form=form, rim=rim)
msg = Message(subject="New Rim submitted",
body=body,
recipients=[app.config.get('MAIL_TO', None)])
try:
mail.send(msg)
except Exception as e:
app.logger.error(e)
return redirect(url_for("wheel_add_rim", rim_id=rim.id))
else:
for e in form.errors.items():
flash(f"{e[0]} - {e[1][0]}")
return render_template('rims_add.html.j2',
form=form)
示例14: send_mail
def send_mail(config, msg):
if not config.get("DEFAULT_MAIL_SENDER", None):
return
app = Flask("yuan")
app.config = config
with app.test_request_context():
mail = Mail(app)
mail.send(msg)
示例15: test_email
def test_email():
from flask_mail import Mail, Message
mail = Mail(app)
msg = Message(subject='test subject', recipients=[app.config['TEST_RECIPIENT']])
msg.body = 'text body'
msg.html = '<b>HTML</b> body'
with app.app_context():
mail.send(msg)