Compartilhamento de tecnologia

[Notas do Flask] Um programa Flask completo

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

Como mencionado antes, o Flask é uma estrutura de desenvolvimento web leve. Por que é considerado leve? Porque pode ser executado com apenas algumas linhas de código.

Instalar o frasco

Antes de examinar a estrutura Flask, precisamos primeiro instalar o módulo flask. Qualquer pessoa que tenha estudado python deve saber que a instalação do módulo flask é realmente muito simples.

pip install flask
  • 1

Você pode instalá-lo. Uma coisa a mencionar aqui é que se você encontrar uma falha de download ao instalar um módulo, é principalmente porque o Python usa o endereço oficial do módulo de download por padrão, e esse endereço às vezes é instável quando acessado na China. é recomendado usar a fonte de download da Tsinghua para fazer o download, que pode ser muito mais rápido e não causará erros ou tempos limite.

https://pypi.tuna.tsinghua.edu.cn/simple
  • 1

O método de uso também é muito simples. O primeiro é adicionar um.-iParâmetros, seguidos da URL, o módulo será baixado deste endereço, conforme segue

pip install flask -i https://pypi.tuna.tsinghua.edu.cn/simple
  • 1

O método acima só pode ser usado para downloads temporários e não pode alterar permanentemente a fonte de download. Aqui está outro método para alterar a fonte de download padrão.

pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
  • 1

Após a mudança, você pode passarpip config listVerifique se a alteração foi bem-sucedida. Se a alteração for bem-sucedida, será exibido da seguinte forma.

(.venv) ❯❯ pip config list
global.index-url='https://pypi.tuna.tsinghua.edu.cn/simple'
  • 1
  • 2

Um programa Flask mínimo e completo

Depois que o Flask for instalado com sucesso, podemos ver um exemplo. Este é um programa flask completo e uma pequena unidade necessária para a execução do flask. Salvamos o código a seguir em um arquivo py, como my_flask.py.

from flask import Flask

app = Flask(__name__)

@app.route('/')
def index():
    return "Hello, World!"

if __name__ == '__main__':
    app.run(debug=True)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

Conforme mostrado no código acima, apenas 10 linhas de código podem fazer o flask rodar, então o flask é uma estrutura web leve.Embora o código acima seja curto, ele é abrangente e contém tudo o que é necessário para executar o Flask. As funções de instância do aplicativo, roteamento e visualização constituem o programa Flask mais simples.

Formulários

A instância do aplicativo é na verdade o objeto de aplicativo do Flask. O objeto mencionado aqui não é sua namorada, mas um núcleo de aplicativo da Web que pode incluir processamento de solicitações, distribuição de rotas e chamada de função de visualização, ou seja, aquela frase.app = Flask(__name__), se olharmos o código-fonte do exemplo do Flask, podemos descobrir que ele contém muito conteúdo, como execução de parâmetros de inicialização, regras de roteamento, definições de como enviar e receber solicitações, etc., que não serão discutidos em detalhes aqui.

roteamento

O roteamento é usado para lidar com a correspondência entre URLs e funções.Aqui temos que falar sobre todo o princípio de funcionamento da web para facilitar o entendimento. Primeiro, veja a imagem abaixo.
Insira a descrição da imagem aqui
O navegador web inicia uma solicitação, o servidor web recebe a solicitação e envia a solicitação para o aplicativo Flask. Depois que o aplicativo Flask recebe a URL solicitada, ele encontra a função de processamento correspondente.
O programa correspondente ao acima é aquela função

@app.route('/')
def index():
    return "Hello, World!"
  • 1
  • 2
  • 3

Se você aprender Python relativamente profundamente, será capaz de conhecer o código acima@app.route('/')é um decorador usado para registrar funções de visualização, e o conteúdo entre parênteses é o caminho a ser usado.'/'Significa o caminho raiz, ou sejahttp://127.0.0.1:5000;Se alterado para‘/login/’Significa usar o caminho de login, ou sejahttp://127.0.0.1:5000/login/; se escrito como'/user/<name>'Torna-se roteamento variável dinâmico, ou seja, o<name>Ele mudará dinamicamente de acordo com o conteúdo transmitido, comohttp://127.0.0.1:5000/user/jay, esse gaio precisa ser anexado à rota pelo navegador.
Isso é simplificado no Flask para facilitar o uso. Na verdade, a forma tradicional de definir rotas não utiliza decoradores. Como a forma tradicional não é mais comumente usada, não entrarei em detalhes aqui.
Há outro ponto que deve ser mencionado aqui sobre roteamento, ou seja, o roteamento de variável dinâmica do Flask suporta apenas os tipos string, int, float e path, como o acima<name> O tipo string é usado. Esse tipo não precisa ser escrito por padrão e pode corresponder a qualquer sequência de caracteres, exceto barras (/).Para outros tipos, se precisar identificá-los, será necessário escrever o tipo, como'/path/<path:my_path>'

função de visualização

A função de visualização é a função que lida com solicitações de entrada, que é a função definida no roteamento.

def index():
    return "Hello, World!"
  • 1
  • 2

A função acima é a chamada função de visualização. Ele é usado para processar solicitações recebidas e retornar respostas.

resposta

A resposta de retorno é mencionada acima, mas qual é a resposta? A resposta é o valor retornado na função de visualização, que pode ser uma string ou um formulário complexo. Você também pode usar a função render_template() fornecida pelo Flask para retornar um html. função redirect() para redirecionar a rota.

comece

As cinco partes internas do programa Flask estão resumidas acima, mas ainda há um ponto de entrada a menos para a execução do Flask, que são as duas últimas linhas deste código.

if __name__ == '__main__':
    app.run(debug=True)
  • 1
  • 2

primeira linhaif __name__ == '__main__':, quem já estudou python sabe que esse é o método de entrada do python, ou seja, o arquivo ou módulo atual é executado diretamente como o programa principal.
segunda linhaapp.run(debug=True)É para chamar o objeto Flask criado acima e executar a função run() para permitir que o Flask seja executado, e a depuração é passada como um parâmetro para a função run() para permitir que o Flask saiba que ele foi iniciado no modo de depuração. carregará automaticamente o recarregador e o depurador.
Em seguida, vamos para a linha de comando, entramos no diretório do arquivo my_flask.py e entramos na linha de comandopython my_flask.pyVocê pode iniciar o programa conforme mostrado na figura abaixo.
Insira a descrição da imagem aqui
Abrimos o navegador e entramoshttp://127.0.0.1:5000Você pode ver Hello, World!, conforme mostrado abaixo
Insira a descrição da imagem aqui

Neste ponto terminamos de explicar os conceitos que nosso programa Flask completo deve ter. Claro, esses são os conteúdos mais básicos. Se você deseja desenvolver completamente uma aplicação web baseada em Flask, ainda há muito que aprender. como modelos e bancos de dados, tecnologia front-end, etc., o autor também escreve enquanto aprende e também recorre ao método de aprendizagem de Feynman para me lembrar com mais firmeza. Se houver alguma omissão ou erro no processo de escrita, por favor. colocar isso em evidência.