werkzeug

Форк
0
/
manage-i18nurls.py 
64 строки · 1.7 Кб
1
import click
2
from werkzeug.serving import run_simple
3

4
from i18nurls import make_app
5

6

7
@click.group()
8
def cli():
9
    pass
10

11

12
@cli.command()
13
@click.option("-h", "--hostname", type=str, default="localhost", help="localhost")
14
@click.option("-p", "--port", type=int, default=5000, help="5000")
15
@click.option("--no-reloader", is_flag=True, default=False)
16
@click.option("--debugger", is_flag=True)
17
@click.option("--no-evalex", is_flag=True, default=False)
18
@click.option("--threaded", is_flag=True)
19
@click.option("--processes", type=int, default=1, help="1")
20
def runserver(hostname, port, no_reloader, debugger, no_evalex, threaded, processes):
21
    """Start a new development server."""
22
    app = make_app()
23
    reloader = not no_reloader
24
    evalex = not no_evalex
25
    run_simple(
26
        hostname,
27
        port,
28
        app,
29
        use_reloader=reloader,
30
        use_debugger=debugger,
31
        use_evalex=evalex,
32
        threaded=threaded,
33
        processes=processes,
34
    )
35

36

37
@cli.command()
38
@click.option("--no-ipython", is_flag=True, default=False)
39
def shell(no_ipython):
40
    """Start a new interactive python session."""
41
    banner = "Interactive Werkzeug Shell"
42
    namespace = dict()
43
    if not no_ipython:
44
        try:
45
            try:
46
                from IPython.frontend.terminal.embed import InteractiveShellEmbed
47

48
                sh = InteractiveShellEmbed.instance(banner1=banner)
49
            except ImportError:
50
                from IPython.Shell import IPShellEmbed
51

52
                sh = IPShellEmbed(banner=banner)
53
        except ImportError:
54
            pass
55
        else:
56
            sh(local_ns=namespace)
57
            return
58
    from code import interact
59

60
    interact(banner, local=namespace)
61

62

63
if __name__ == "__main__":
64
    cli()
65

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.