def ipython_shell(user_ns): if getattr(IPython, 'version_info', None) and IPython.version_info[0] >= 1: from IPython.terminal.ipapp import TerminalIPythonApp from IPython.terminal.interactiveshell import TerminalInteractiveShell else: from IPython.frontend.terminal.ipapp import TerminalIPythonApp from IPython.frontend.terminal.interactiveshell import TerminalInteractiveShell class ShireIPythonApp(TerminalIPythonApp): def init_shell(self): self.shell = TerminalInteractiveShell.instance( config=self.config, display_banner=False, profile_dir=self.profile_dir, ipython_dir=self.ipython_dir, banner1=get_banner(), banner2='' ) self.shell.configurables.append(self) app = ShireIPythonApp.instance() app.initialize() app.shell.user_ns.update(user_ns) neptulon_app = create_app() with neptulon_app.app_context(): sys.exit(app.start())
# coding: utf-8 import sys import os sys.path.append(os.path.abspath('.')) from flask import render_template from flask.ext.mail import Message from neptulon.ext import mail from neptulon.config import MAIL_USERNAME, MAC_VPN_CONFIG_FILE, WIN_VPN_CONFIG_FILE from neptulon.app import create_app from neptulon.ext import db from neptulon.models import User def send_emails(): with app.app_context(): users, total = User.list_users() for u in users: if u.id: if not u.send_doc_email(): print '!!! sending doc email error !!!' else: print 'uid error' print 'all emails have been sent.' if __name__ == '__main__': app = create_app() send_emails()