Yes, basic emailing is working, and I do have that code in my db.py file.
So if I do mail.send('email', 'title', 'body') it works.
The reason I had so much trouble with this was because I set up my app
using the wizard. The wizard created another file called 0.py (great name)
that was overwriting my mail.settings variables (great design decision).
Anyways, after two days of banging my head against the desk I finally got
emailing to work but now I can't get automated emailing upon user
registration to work.
Any suggestions?
On Friday, November 23, 2012 5:54:49 PM UTC, Massimo Di Pierro wrote:
To send emails you need to connect an SMTP server. For example, to send
emails using your google mail account
mail = auth.settings.mailer
mail.settings.server = 'smtp.gmail.com:587'
mail.settings.sender = 'y...@gmail.com javascript:'
mail.settings.login = 'y...@gmail.com:password'
Do you have similar code?
On Friday, 23 November 2012 09:26:57 UTC-6, Daniele wrote:
Hello all,
I'm wondering why I cannot get the email upon registration to work. I've
finally gotten basic emailing to work, but it doesn't seem to send anything
automatically upon user registration.
Here's my db.py file:
from gluon.tools import Auth, Crud, Service, PluginManager, prettydate
auth = Auth(db)
crud, service, plugins = Crud(db), Service(), PluginManager()
## Auth
db.define_table(
auth.settings.table_user_name,
Field http://127.0.0.1:8000/examples/global/vars/Field('email',
length=128, default=''),
Field http://127.0.0.1:8000/examples/global/vars/Field('password',
'password', length=512, readable=False),
Field
http://127.0.0.1:8000/examples/global/vars/Field('password_verify',
'password', length=512, readable=False),
Field
http://127.0.0.1:8000/examples/global/vars/Field('registration_time',
'datetime', requires=IS_DATETIME
http://127.0.0.1:8000/examples/global/vars/IS_DATETIME(), writable=False,
readable=False, default=request
http://127.0.0.1:8000/examples/global/vars/request.utcnow),
Field
http://127.0.0.1:8000/examples/global/vars/Field('registration_key',
length=512, writable=False, readable=False, default=''),
Field
http://127.0.0.1:8000/examples/global/vars/Field('registration_id',
length=512, writable=False, readable=False, default='')
)
custom_auth_table = db[auth.settings.table_user_name]
custom_auth_table.email.requires = [
IS_NOT_EMPTY
http://127.0.0.1:8000/examples/global/vars/IS_NOT_EMPTY(error_message='Please
input an email address'),
IS_EMAIL
http://127.0.0.1:8000/examples/global/vars/IS_EMAIL(error_message=auth.messages.invalid_email),
IS_NOT_IN_DB
http://127.0.0.1:8000/examples/global/vars/IS_NOT_IN_DB(db,
custom_auth_table.email)]
custom_auth_table.password.requires = [
IS_NOT_EMPTY
http://127.0.0.1:8000/examples/global/vars/IS_NOT_EMPTY(error_message='Please
type a password'),
IS_STRONG
http://127.0.0.1:8000/examples/global/vars/IS_STRONG(min=8, special=0,
upper=1),
CRYPT http://127.0.0.1:8000/examples/global/vars/CRYPT()]
custom_auth_table.password_verify.requires = [
IS_NOT_EMPTY
http://127.0.0.1:8000/examples/global/vars/IS_NOT_EMPTY(error_message='Please
retype your password'),
IS_EQUAL_TO
http://127.0.0.1:8000/examples/global/vars/IS_EQUAL_TO(request
http://127.0.0.1:8000/examples/global/vars/request.vars.password,
error_message='Passwords do not match'),
CRYPT http://127.0.0.1:8000/examples/global/vars/CRYPT()]
auth.settings.table_user = custom_auth_table # tell auth to use
custom_auth_table
## create all tables needed by auth if not custom tables
auth.define_tables(username=False, signature=False)
# configure auth settings
auth.settings.long_expiration = 3600*24*30 # one month
auth.settings.remember_me_form = True
## configure auth policy
auth.settings.registration_requires_verification = True
auth.settings.login_after_registration = True
auth.settings.registration_requires_approval = False
auth.settings.reset_password_requires_verification = True
auth.messages.verify_email = 'Click on the link http://' + \
request
http://127.0.0.1:8000/examples/global/vars/request.env.http_host + \
URL http://127.0.0.1:8000/examples/global/vars/URL(r=request
http://127.0.0.1:8000/examples/global/vars/request,f='user',args=['verify_email'])
+ \
'/%(key)s to verify your email'
auth.messages.reset_password = 'Click on the link http://' + \
request
http://127.0.0.1:8000/examples/global/vars/request.env.http_host + \
URL http://127.0.0.1:8000/examples/global/vars/URL(r=request
http://127.0.0.1:8000/examples/global/vars/request,f='user',args=['reset_password'])
+ \
'/%(key)s to reset your password'
auth.settings.register_next = URL
http://127.0.0.1:8000/examples/global/vars/URL('dashboard')
auth.settings.login_url = URL