Пример #1
0
def includeme(config):
    settings = config.registry.settings
    engine = engine_from_config(settings, 'sqlalchemy.')
    DBSession.configure(bind=engine)
    Base.metadata.bind = engine

    config.include('pyramid_jinja2')
    config.include('pyramid_celery')
    config.include('pyramid_fanstatic')
    config.include('deform_bootstrap')
    config.add_route('contact', '/')
    config.add_static_view('static', 'static', cache_max_age=3600)
    config.scan()
Пример #2
0
 def render(self):
     context = super(ContactView, self).render()
     if self.request.method == 'POST':
         try:
             values = self.form.validate(self.request.POST.items())
             send_email.delay(values['email'], values['content'], values['name'], values['last_name'])
             contact = Contact(values['name'], values['last_name'], values['email'],
                 values['content'])
             with transaction.manager:
                 DBSession.add(contact)
             context['message'] = 'Email sent'
             context['message_type'] = 'info'
             log.info('%s from %s %s' % (context['message'], values['name'], values['last_name']))
             return context
         except Exception as ex:
             if not issubclass(ValidationFailure, ex.__class__):
                 log.error(ex.message)
     context['form'] = self.form.render()
     return context