iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >使用Pyramid框架构建Python
  • 724
分享到

使用Pyramid框架构建Python

框架PyramidPython 2023-01-31 05:01:41 724人浏览 安东尼

Python 官方文档:入门教程 => 点击学习

摘要

关于Pyramid框架在本博另一篇文章“使用Buildout进行开发”中,有讲到使用Buildout来将Pyramid框架集成到python环境中,并构建一个“helloworld”级别的Python WEB应用。Web框架旨在提供一个快速

关于Pyramid框架


在本博另一篇文章“使用Buildout进行开发”中,有讲到使用Buildout来将Pyramid框架集成到python环境中,并构建一个“helloworld”级别的Python WEB应用。

Web框架旨在提供一个快速、简单的方式来跳跃式的开始一个Web应用。几乎每一个框架都遵从mvc软件模式,MVC代表模型(model)、视图(view)和控制器(controller)。这是一种以分辨和分隔应用中的不同功能来简化应用的设计和允许每一个部件的修改完全独立于其他的模式。

Pyramid是一个轻量级的Python应用的web框架,它允许非常快速的拥有你的基本的web应用并运行之。事实上,它能够将所有的框架都放置在单一文件中,只要你喜欢。


使用Pyramid构建web应用


1. 依照本博的另外一篇文章,Http://ranGochen.blog.51cto.com/2445286/1397434,可以创建一个Python的虚拟环境:

#virtualenv --no-site-packages env

#source env/bin/activate


2. 创建项目主目录,并在虚拟环境中安装Pyramid:

#mkdir pyramid_sites

#cd pyramid_sites

#easy_install pyramid

上述命令会将框架需要的所有文件都安装到虚拟环境中。


3. 创建一个helloworld示例项目:

#mkidr hello_world

#cd hello_world

创建应用脚本文件,并添加以下内容:

#vim application.py

from wsgiref.simple_server import make_server

from pyramid.config import Configurator

from pyramid.response import Response

def hello_world(request):    

   return Response('<h1>Hello world!</h1>')

if __name__ == '__main__':    

   config = Configurator()    

   config.add_view(hello_world)    

   app = config.make_wsgi_app()    

   server = make_server('0.0.0.0', 8080, app)    

   server.serve_forever()

注解:

1. import语句部分:make_server函数能够创建一个web服务器,当它运行了一个应用时;Configurator和Response是Pyramid中的函数,这些函数分别被使用来为应用配置细节和设置参数以及对请求作出反应。

2. hello_world函数部分代表了我们应用的一个视图,通过Response函数将请求反应值传送到客户端。

3. 主函数是程序真正执行的地方,通过运行主函数的实例来配置和构建服务器。


保存上述文件,并执行:

#python application.py

通过Web访问helloworld应用:

http://ip:8080

wKioL1NQ3IagJPY9AAApFLI637Q598.jpg


使用Scaffolding构建一个Pyramid应用


在上述示例中,所有的工作都是在一个文件中(application.py)完成,虽然这是一种非常好的方式来展示如何使用Pyramid来压缩和简化构建MVC应用的过程,但这不总是最简单的方法。

与大多数流行框架类似,Pyramid能够使用scaffolding来快速创建一个复杂的项目目录结构。通过pcreate这个工具来使用scaffolding。Wikipedia上关于scaffolding的介绍为:

Scaffolding is a technique supported by some model-view-controller frameworks, in which the programmer may write a specification that describes how the application database may be used. The compiler uses this specification to generate code that the application can use to create, read, update and delete database entries, effectively treating the template as a "scaffold" on which to build a more powerful application.


进入Pyramid主目录下,查看可用的scaffolding:

#cd pyramid_sites

#pcreate -l

Available scaffolds:
 alchemy:  Pyramid sqlAlchemy project using url dispatch
 starter:  Pyramid starter project
 zodb:     Pyramid ZODB project using traversal

注解:

1. alchemy能够使用SQL融合来创建一个项目

2. starter能够创建一个在应用实体之间非持续性的基本项目

3. zodb能够创建一个依靠ZODB来运行的项目


使用starter模板来创建第一个项目:

#pcreate -s starter first_project

#cd first_project

#ls

CHANGES.txt      first_project           MANIFEST.in     README.txt
development.ini  first_project.egg-info  production.ini  setup.py

在该目录下的文件大多是用于配置的,程序本身主要包含在以项目名字命名的一个子目录中


运行setup脚本来配置应用的开发环境:

#python setup.py develop

running develop
running egg_info
writing requirements to first_project.egg-info/requires.txt
writing first_project.egg-info/PKG-INFO
writing top-level names to first_project.egg-info/top_level.txt
writing dependency_links to first_project.egg-info/dependency_links.txt
writing entry points to first_project.egg-info/entry_points.txt
writing requirements to first_project.egg-info/requires.txt
writing first_project.egg-info/PKG-INFO
writing top-level names to first_project.egg-info/top_level.txt
writing dependency_links to first_project.egg-info/dependency_links.txt
writing entry points to first_project.egg-info/entry_points.txt
reading manifest file 'first_project.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
warning: no files found matching '*.cfg'

......

该命令将使用定义在development.ini中的可用参数来配置你的应用


最后运行你的项目:

#pserve development.ini

Starting server in PID 21251.
serving on http://0.0.0.0:6543

登录http://ip:6543 ,可查看到默认的应用界面


增加调试面板:Pyramid Debug Toolbar,

#vim development.ini

#在[app:main]选项中增加以下语句来使得所有连接到的主机都能够看到调试面板

debugtoolbar.hosts = 0.0.0.0/0

保存并退出,重启服务器可以看到调试面板在右手边

#pserve development.ini

                                                                                                                             ——游响云停



--结束END--

本文标题: 使用Pyramid框架构建Python

本文链接: https://www.lsjlt.com/news/188537.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 使用Pyramid框架构建Python
    关于Pyramid框架在本博另一篇文章“使用Buildout进行开发”中,有讲到使用Buildout来将Pyramid框架集成到Python环境中,并构建一个“helloworld”级别的Python Web应用。Web框架旨在提供一个快速...
    99+
    2023-01-31
    框架 Pyramid Python
  • Python web开发框架Pyramid怎么用
    要使用Python web开发框架Pyramid,你需要按照以下步骤进行操作: 安装Pyramid:使用pip命令安装Pyram...
    99+
    2023-10-23
    Python Pyramid
  • Pyramid框架的使用范围是什么?
    Pyramid框架是一种基于Python的Web开发框架,它提供了一种简洁、灵活和可扩展的方式来构建高效的Web应用程序。Pyramid框架的设计哲学是“尽量少做决策”,这意味着它尽可...
    99+
    2024-02-25
    模板引擎 支持url路由 支持http方法
  • python中Pyramid框架的作用是什么
    这篇文章给大家介绍python中Pyramid框架的作用是什么,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。Python主要用来做什么Python主要应用于:1、Web开发;2、数据科学研究;3、网络爬虫;4、嵌入式应...
    99+
    2023-06-14
  • 如何使用 Python 框架构建 HTTP API?
    随着互联网的发展,HTTP API 的应用越来越广泛,可以说是现代Web应用的核心组件之一。Python 作为一门流行的编程语言,也有很多优秀的框架可以用于构建 HTTP API。 本文将介绍如何使用 Python 框架 Flask 和 ...
    99+
    2023-10-06
    框架 api http
  • 如何使用Python构建响应文件框架?
    如何使用Python构建响应文件框架? 在Python编程领域中,构建一个响应式文件框架是一个非常重要的任务。文件框架是指一套用于管理和组织数据的程序结构,它可以支持多种数据类型,包括文本、图像和音频等。本文将介绍如何使用Python编程语...
    99+
    2023-07-20
    响应 文件 框架
  • Python怎么构建API流行框架
    这篇文章主要介绍了Python怎么构建API流行框架的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Python怎么构建API流行框架文章都会有所收获,下面我们一起来看看吧。凭借着平缓的学习曲线和简单直接的语法,...
    99+
    2023-06-27
  • JavaScript框架怎么构建
    这篇文章主要讲解了“JavaScript框架怎么构建”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“JavaScript框架怎么构建”吧!觉得Mootools...
    99+
    2024-04-02
  • LINQ如何构建框架
    小编给大家分享一下LINQ如何构建框架,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!如今,LINQ的版本发布已经尘埃落定,是时候思考如何使用它了。Keith Fa...
    99+
    2023-06-17
  • WPF框架Prism中使用MVVM架构
    常见的MVVM框架 众所周知, 如果你了解WPF当中的ICommand, INotifyPropertyChanged的作用, 就会发现众多框架都是基于这些进行扩展, 实现其通知、绑...
    99+
    2024-04-02
  • ASP中如何使用关键字来构建框架?
    ASP(Active Server Pages)是一种使用VBScript或JavaScript进行编程的服务器端脚本语言,它可以用来创建动态网页。在ASP中,关键字是一种重要的元素,可以帮助开发人员构建框架,提高代码的可读性和可维护性。 ...
    99+
    2023-08-30
    关键字 框架 数组
  • PHP中如何使用Shell和Git来构建框架?
    在Web开发中,构建一个高效、可扩展的框架是非常重要的。PHP作为一门流行的Web开发语言,有许多优秀的框架可以使用。但是,如果你想自己构建一个框架,你可以使用Shell和Git来帮助你完成这个任务。 Shell是一个命令行工具,可以用于...
    99+
    2023-10-20
    shell git 框架
  • streamlit (python构建web可视化框架)笔记
    文章目录 一、安装使用streamlit二、streamlit使用1.展示和数据样式2.`dataframe()`生成交互表和`table()`方法生成静态表3.绘制折线图4.绘制地图5.一些...
    99+
    2023-10-01
    笔记 python
  • SpringBoot如何构建ORM框架
    本篇内容主要讲解“SpringBoot如何构建ORM框架”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“SpringBoot如何构建ORM框架”吧!目前常用的ORM框架有 Mybatis(bati...
    99+
    2023-06-29
  • 使用HTML框架构建移动友好型网站
    打造一个移动友好的网站至关重要,因为它可以为用户提供最佳的浏览体验,并提高网站的参与度和转化率。使用 HTML 框架可以显著简化和加快移动友好型网站的开发过程。 框架的选择 选择合适的 HTML 框架对于创建移动友好型网站至关重要。以下是...
    99+
    2024-04-02
  • Spring Boot构建框架详解
    什么Spring Boot?Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。用我的话来理解,...
    99+
    2023-05-30
    spring boot 框架
  • Android 架构之数据库框架搭建
    目录1、先创建对应相关操作的注解1.1 bTable 标识表 1.2 DbPrimaryKey 标识主键 1.3 DbFiled 标识成员属性 2、创建对应表操作...
    99+
    2024-04-02
  • Django REST框架:如何使用HTTP API构建Web服务?
    Django REST框架是一个基于Django的强大的Web API框架,它使得构建Web服务变得更加容易和快速。本文将介绍如何使用Django REST框架来构建HTTP API服务。 安装Django REST框架 首先,需要安...
    99+
    2023-11-12
    django http git
  • Python - 【FastAPI】框架配置搭建基本使用
    一. 前言 之前在面试的时候面试官有提到过这个框架,但是个人在之前的项目中没有用到过,只是有听过,并没有实际的应用,因此,个人自己研究了一下,这是个新型的框架,使用起来相对挺简单。FastAPI是一个...
    99+
    2023-09-11
    python fastapi 数据库
  • 如何在 PHP 和 JavaScript 中使用 Spring 框架构建 API?
    Spring框架是一个流行的Java框架,用于构建Web应用程序和API。它提供了许多方便的功能和工具,可以帮助开发人员快速构建高质量的应用程序。在本文中,我们将讨论如何在PHP和JavaScript中使用Spring框架构建API。 安...
    99+
    2023-11-03
    javascript spring api
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作