Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Python en Visual Studio admite el desarrollo de proyectos web en marcos bottle, Flask y Django a través de plantillas de proyecto y un iniciador de depuración que se puede configurar para controlar varios marcos. Estas plantillas incluyen un archivo requirements.txt para declarar las dependencias necesarias. Al crear un proyecto a partir de una de estas plantillas, Visual Studio le pide que instale los paquetes dependientes, como se describe en Requisitos de instalación más adelante en este artículo.
También puede usar la plantilla de proyecto web genérica para otros marcos, como Pyramid. En este caso, no se instala ningún marco con la plantilla. En su lugar, instale los paquetes necesarios en el entorno que usa para el proyecto. Para más información, consulte la ventana Entornos de Python: pestaña Paquete.
Opciones de plantilla de proyecto
Para crear un proyecto a partir de una plantilla, seleccione Archivo>nuevo>proyecto en el menú de la barra de herramientas. En el cuadro de diálogo Crear un nuevo proyecto , puede filtrar la lista de plantillas para ver las opciones disponibles para proyectos web de Python. Escriba los términos clave en el cuadro Buscar o use los menús desplegables de filtro para seleccionar Python como lenguaje y Web como tipo de proyecto.
Después de seleccionar una plantilla, proporcione un nombre para el proyecto y la solución y establezca las opciones para el directorio de soluciones y el repositorio de Git.
La plantilla genérica de Web Project proporciona un proyecto vacío de Visual Studio sin código y no hace suposiciones aparte de ser un proyecto de Python. Las otras plantillas se basan en los marcos web Bottle, Flask o Django y se agrupan en tres categorías, como se describe en las secciones siguientes. Las aplicaciones creadas por cualquiera de estas plantillas contienen código suficiente para ejecutar y depurar la aplicación localmente. Cada plantilla también proporciona el objeto de aplicación WSGI necesario (python.org) para su uso con servidores web de producción.
Grupo en blanco
Todas las plantillas de marco de proyecto web <en blanco > crean un proyecto con código estándar más o menos mínimo y las dependencias necesarias declaradas en un archivo requirements.txt.
| Template | Description |
|---|---|
| Proyecto Web Blank Bottle | Genera una aplicación mínima en el archivo app.py con una página de inicio para la ubicación / y una página /hello/<name> que refleja el valor <name> mediante una plantilla de página en línea corta. |
| Proyecto web de Django en blanco | Genera un proyecto de Django con la estructura principal del sitio de Django, pero no las aplicaciones de Django. Para obtener más información, consulte Plantillas de Django y Aprendizaje del paso 1 de Django. |
| Proyecto web de Flask en blanco | Genera una aplicación mínima con una sola página "Hola mundo!" para la / ubicación. Esta aplicación es similar al resultado de seguir los pasos detallados en Inicio rápido: Uso de Visual Studio para crear la primera aplicación web de Python. Para obtener más información, consulte Paso 1 de Flask. |
Grupo web
Todas las <plantillas de Proyecto web de Framework> crean una aplicación web de inicio con un diseño idéntico, independientemente del marco elegido. La aplicación tiene páginas Inicio, Acerca y Contacto, junto con una barra de menús de navegación y un diseño dinámico que usa Bootstrap. Cada aplicación está configurada correctamente para servir archivos estáticos (CSS, JavaScript y fuentes) y usa un mecanismo de plantilla de página adecuado para el marco.
| Template | Description |
|---|---|
| Proyecto Web Bottle | Genera una aplicación cuyos archivos estáticos se encuentran en la carpeta estática y se controlan a través del código del archivo app.py . El enrutamiento de las páginas individuales está incluido en el archivo routes.py . La carpeta views contiene las plantillas de página. |
| Proyecto web de Django | Genera un proyecto de Django y una aplicación de Django con tres páginas, compatibilidad con la autenticación y una base de datos de SQLite (pero sin modelos de datos). Para obtener más información, consulte Plantillas de Django y Aprendizaje del paso 4 de Django. |
| Proyecto web de Flask | Genera una aplicación cuyos archivos estáticos están contenidos en la carpeta estática . El código del archivo views.py controla el enrutamiento con plantillas de página que usan el motor jinja contenido en la carpeta templates . El archivo runserver.py proporciona código de inicio. |
Requisitos de instalación
Al crear un proyecto a partir de una plantilla específica del marco, Visual Studio proporciona un cuadro de diálogo para ayudarle a instalar los paquetes necesarios mediante pip. También se recomienda usar un entorno virtual para proyectos web para asegurarse de que se incluyen las dependencias correctas al publicar el sitio web:
Si usa el control de código fuente, normalmente omite la carpeta del entorno virtual porque ese entorno solo se puede volver a crear mediante el archivo requirements.txt . La mejor manera de excluir la carpeta es seleccionar primero la opción I will install them myself (Instalarlos yo mismo ) y, a continuación, deshabilitar la confirmación automática antes de crear el entorno virtual. Para obtener más información, consulte Examen de los controles de Git en el Tutorial de Learn Django y Tutorial de Flask.
Al implementar en Microsoft Azure App Service, seleccione una versión de Python como extensión de sitio e instale paquetes manualmente. Además, dado que Azure App Service no instala automáticamente paquetes desde un archivo derequirements.txt cuando se implementa desde Visual Studio, siga los detalles de configuración de aka.ms/PythonOnAppService.
Opciones de depuración
Al abrir un proyecto web para la depuración, Visual Studio inicia un servidor web local en un puerto aleatorio y abre el explorador predeterminado a esa dirección y puerto. Para especificar más opciones, haga clic con el botón derecho en el proyecto en el Explorador de soluciones, seleccione Propiedades. En la página Propiedades , seleccione la pestaña Depurar .
Hay tres grupos de opciones de configuración comunes para depurar el proyecto. El grupo Ejecutar incluye las siguientes propiedades:
- Las opciones Rutas de acceso de búsqueda, Argumentos de script, Ruta de acceso del intérprete y Argumentos del intérprete son las mismas que para la depuración normal.
- La dirección URL de inicio especifica la dirección URL que se abre en el explorador. La ubicación predeterminada es
localhost. - El número de puerto identifica el puerto que se va a usar, si no se especifica ninguno en la dirección URL (Visual Studio selecciona uno automáticamente de forma predeterminada). Esta configuración permite sobrescribir el valor predeterminado de la variable de entorno
SERVER_PORT, que las plantillas utilizan para configurar en qué puerto el servidor de depuración local escucha. - La lista Entorno define variables que se van a establecer en el proceso generado. El formato es una lista
<NAME>=<VALUE>de pares separados por nuevas líneas.
Las propiedades de los grupos Ejecutar comando del servidor y Comando del servidor de depuración determinan cómo se inicia el servidor web. Dado que muchos marcos requieren el uso de un script fuera del proyecto actual, el script se puede configurar aquí y el nombre del módulo de inicio se puede pasar como parámetro.
- El comando puede ser un script de Python (*.py archivo), un nombre de módulo (como en ,
python.exe -m module_name) o una sola línea de código (como en ,python.exe -c "code"). El valor del cuadro desplegable indica qué tipo está previsto. - La lista de argumentos se pasa en la línea de comandos después del comando.
- De nuevo, en la lista Entorno se definen variables para configurar tras todas las propiedades que podrían modificar el entorno, como el número de puerto y las rutas de acceso de búsqueda. Estos valores de variable pueden sobrescribir otros valores de propiedad.
Cualquier propiedad de proyecto o variable de entorno se puede especificar con la sintaxis de MSBuild, como $(StartupFile) --port $(SERVER_PORT).
$(StartupFile) es la ruta de acceso relativa al archivo de inicio y {StartupModule} es el nombre importable del archivo de inicio.
$(SERVER_HOST) y $(SERVER_PORT) son variables de entorno normales establecidas por las propiedades Launch URL y Port Number , automáticamente o por la propiedad Environment .
Nota:
Los valores en Ejecutar Comando del Servidor se utilizan con el comando Depuración>Iniciar Servidor o el método abreviado de teclado Ctrl+F5. Los valores del grupo Comando del servidor de depuración se utilizan con el comando Depurar>Iniciar servidor de depuración o F5.
Configuración de botella de ejemplo
La plantilla Bottle Web Project incluye código reutilizable que realiza la configuración necesaria. Sin embargo, es posible que una aplicación de botella importada no incluya este código, en cuyo caso la siguiente configuración inicia la aplicación mediante el módulo instalado bottle :
Ejecutar grupo de comandos del servidor :
-
Comando:
bottle(módulo) -
Argumentos:
--bind=%SERVER_HOST%:%SERVER_PORT% {StartupModule}:app
-
Comando:
Grupo de comandos del servidor de depuración :
-
Comando:
bottle(módulo) -
Argumentos
--debug --bind=%SERVER_HOST%:%SERVER_PORT% {StartupModule}:app
-
Comando:
La opción --reload no se recomienda al usar Visual Studio para la depuración.
Configuración de pirámide de ejemplo
Las aplicaciones piramidales se crean actualmente mejor mediante la pcreate herramienta de línea de comandos. Después de crear la aplicación, se puede importar mediante la plantilla De código de Python existente . Una vez completada la importación, seleccione la personalización del proyecto web genérico para configurar las opciones. Esta configuración supone que Pyramid está instalado en un entorno virtual en la ..\env ubicación.
Grupo de ejecución :
- Número de puerto: 6543 (o lo que esté configurado en los archivos .ini )
Ejecutar grupo de comandos del servidor :
- Comando:
..\env\scripts\pserve-script.py(script) - Argumentos:
Production.ini
- Comando:
Grupo de comandos del servidor de depuración :
- Comando:
..\env\scripts\pserve-script.py(script) - Argumentos:
Development.ini
- Comando:
Sugerencia
Es probable que tenga que configurar la propiedad Directorio de trabajo del proyecto porque las aplicaciones pyramid suelen ser una carpeta debajo de la raíz del proyecto.
Otras configuraciones
Si tiene la configuración de otro marco que le gustaría compartir o si desea solicitar la configuración de otro marco, abra un problema en GitHub.