Flask 명령줄 인터페이스

Nesse artigo, iremos explorar o CLI do micro-framework flask. 프레임워크 웹과 플라스크를 결합하고 노드를 노드로 확장하고 Python을 통합할 수 있습니다.

Entendendo 또는 CLI...
  • Ao instalar do Flask, automaticamente, será instalado uma interface de linha de comando Click, em seu virtualenv (ambiente virtual);
  • 최소 가능성에서 Flask 에스크리벤도를 클릭하십시오.

  • Semelhante aos comandos que o framework django possui para criar super-usuarios, criar apps, etc. o Click possibilita fazermos isso eo melhor é que podemos ir além e criar nossos proprios comandos, agilizando o desenvolvimento de nossos projetos.

    의존증


  • 가상 환경
  • 플라스크

  • OBS: Irei partir da premissa de que você ja esta familiarizado com a configuração do ambiente e instalação das dependsencias.

    Sua estrutura de pastas deve ficar parecida com a minha:



    Arquivo __ init __.py escreva 또는 codigo da seguinte 형식:

    
    # flask imports
    from flask import Flask
    
    
    def create_app():
        '''
            Função para criar um aplicativo Flask
        '''
    
        # Instanciando a o objeto Flask()
        app = Flask(__name__)
    
        # retornando o objeto app
        return app
    
    


    Agora, arquivo settings.py iremos criar o nosso comando를 확인하세요. O mesmo será responsável por criar apps em nossa aplicação, sem precisarmos criar arquivo por arquivo.

    상황에 따라...

    마이크로 프레임워크에 대해 자세히 알아보십시오. 예를 들어 웹에 기본적으로 적용할 수 있는 메시지가 있습니다. No django, ao execuarmos o comando django-admin startapp criamos uma app dentro do diretorio em que você esta, contendo dentro dessa app os arquivos necessários para que possamos trabalhar, agilizando o processo de criação de nossa aplicação.

    이 방법은 플라스크를 사용하는 모든 플라스크에 적용할 수 있으며 복잡한 복잡성과 직관을 위한 것이므로 CLI에서 플라스크의 기능을 사용할 수 있습니다.

    Dessa forma, dentro do arquivo settings.py, iremos inserir o seguinte codigo:

    # python imports
    import os
    import subprocess
    
    # flask imports
    import click
    from flask import request, Blueprint
    
    
    # Registrando blueprint
    bp_settings = Blueprint('settings', __name__)
    
    @bp_settings.cli.command("startapp")
    @click.argument("name")
    def create_folder_app(name):
        '''
            Essa função cria uma app dentro
            do projeto, ja com os arquivos
            necessarios para trabalhar.
    
            Exemplo: flask startapp <nome_da_app>
    
            Dentro da pasta contém os arquivos: 
                - '__init__.py' -> arquivo __init__.py 
                dentro de um subdiretório será sempre o 
                primeiro a ser executado quando um módulo 
                dentro deste subdiretório for chamado;
    
                - 'views.py' -> arquivo responsavel por
                conter a logica de cada app;
    
                - 'models.py' -> arquivo que contém uma classe
                que abstrai em modelo uma tabela do banco de dados;
    
                - 'forms.py' -> arquivo que pode ser usado
                para abstrair os forms HTML, utilizando a 
                lib Flask-WTForms.
    
            Foi utilizado a função click do 
            flask, responsável por criar
            comandos e argumentos para a 
            aplicação.
        '''
    
        # Atribuindo o argumento recebido
        # na variavel "name"
        name=name
    
        try:
            # Acessando a pasta 'app'
            here = os.path.dirname(os.path.dirname(__file__))
    
            # Setando o caminho e o nome
            # dos arquivos que serão criados
            filepath_init = os.path.join(here, f'{name}', '__init__.py')
            filepath_views = os.path.join(here, f'{name}', 'views.py')
            filepath_models = os.path.join(here, f'{name}', 'models.py')
            filepath_forms = os.path.join(here, f'{name}', 'forms.py')
    
            # Criando pasta
            os.mkdir(os.path.join(here, f'{name}'))
            try:
                # Criando os arquivos
                f = open(filepath_init, 'w')
                f = open(filepath_views, 'w')
                f = open(filepath_models, 'w')
                f = open(filepath_forms, 'w')
    
                print('App criada com sucesso')
            except IOError as e:
                print(e)
        except IsADirectoryError as e:
            print(e)
    
    


    Resumidamente, codigo acima cria uma app dentro da pasta app do projeto, contendo os arquivos comumente usados, sendo eles, __ init __.py, views.py, models.py, forms.py.

    Agora, vamos voltar para nosso arquivo __ init __.py e adicionar o seguinte trecho de código:

    
     # flask custom commands
     with app.app_context():
         from .settings import create_folder_app
         app.cli.add_command(create_folder_app)
    
    


    또는 arquivo __ init __.py 완전한 파일 확인:

    
    # flask imports
    from flask import Flask
    
    
    def create_app():
        '''
            Função para criar um aplicativo Flask
        '''
    
        # Instanciando a o objeto Flask()
        app = Flask(__name__)
    
        # flask custom commands
        with app.app_context():
            from .settings import create_folder_app
            app.cli.add_command(create_folder_app)
    
        # retornando o objeto app
        return app
    
    


    Agora, vamos exportar nossas variaveis de ambiente, para que aplicação flask funcione corretamente. 시가 오스 파소스:
  • Em seu terminal, dentro da pasta projeto, digite consecuivamente:

  • export FLASK_APP=project
    export FLASK_ENV=Development
    export FLASK_DEBUG=True
    


    Feito isso, ja podemos executar o seguinte comando no terminal, para, de fato, utilizarmos nosso comando:

    flask startapp projeto/usuarios 
    


    O comando acima irá criar nossa app dentro da pasta projeto.

    Após executar o mesmo, a seguinte ordenação de pasta será criada:



    Pronto, agora ja conseguimos agilizar um de nossos procedimentos diarios no desenvolvimento de uma aplicação flask.

    최종 고려사항



    O intuito desse artigo foi mostrar a liberdade que temos com o flask e o quanto o mesmo é expansível a modo de facilitar a nossa vida no dia a dia.

    좋은 웹페이지 즐겨찾기