TurboGears
   HOME





TurboGears
TurboGears is a Python web application framework consisting of several WSGI components such as WebOb, SQLAlchemyKajikitemplate language and Repoze. TurboGears is designed around the model–view–controller (MVC) architecture, much like Struts or Ruby on Rails, designed to make rapid web application development in Python easier and more maintainable. Since version 2.3 the framework has also been providing a "minimal mode" which enables it to act as a microframework for usage in environments where the whole stack is not required nor wanted. TurboGears components TurboGears is built on top of numerous disparate libraries and middleware. The default tools have changed between the 1.x, 2.x and 2.3+ series, but most of these components can be used in either as there is support for many alternative configurations. The following are the primary components a developer would interact with. TurboGears 2.x components * SQLAlchemy (Model) - defines the table structures of the us ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


CherryPy
CherryPy is an object-oriented web application framework using the Python (programming language), Python programming language. It is designed for Rapid application development, rapid development of web applications by wrapper pattern, wrapping the HyperText Transfer Protocol, HTTP protocol but stays at a low level and does not offer much more than what is defined in RFC 7231. CherryPy can be a web server itself or one can launch it via any Web Server Gateway Interface, WSGI compatible environment. It does not deal with tasks such as templating for output rendering or backend access. The framework is extensible with filters, which are called at defined points in the request/response processing. Pythonic interface One of the goals of the project founder, Remi Delon, was to make CherryPy as pythonic as possible. This allows the developer to use the framework as any regular Python module and to forget (from a technical point of view) that the application is for the web. For instance ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


MochiKit
MochiKit is a light-weight JavaScript library written and maintained by Bob Ippolito. Inspired by the Python networking framework, Twisted, it uses the concept of deferred execution to allow asynchronous behaviour. This has made it useful in the development of interactive web pages which maintain a dialog with the web server, sometimes called Ajax applications. Of particular note is its ability to load and manipulate JSON-encoded data sets, and MochiKit.DOM, a set of functions to easily create dynamic page components. MochiKit forms the foundation of the client-side functionality of the TurboGears Python web-application stack. Perhaps as a result of the author's involvement in the Python community, MochiKit exhibits many idioms familiar to Python programmers, and is commonly used in Python-based web applications. See also * Comparison of JavaScript frameworks * TurboGears TurboGears is a Python web application framework consisting of several WSGI components such as ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Genshi (templating Language)
Genshi is a template engine (web), template engine for XML-based vocabularies written in Python (programming language), Python. Genshi is used to easily insert generated output into XML-based languages, usually HTML, and reuse elements between documents. Genshi's syntax is based on Kid (templating language), Kid, but its architecture is different. Genshi aims to implement some of its functionality while processing templates faster, by dynamically processing templates using a stream based API, instead of compiling templates to Python code. Genshi can be used with several Python web frameworks, such as CherryPy, TurboGears, Pylons project#Pylons Framework, Pylons and web2py. Genshi was the default templating language for TurboGears from versions 1.1 to 2.3.8. Genshi markup Genshi makes use of XML Namespace, namespaces to embed instructions into HTML. A typical instruction is given as an XML#Well-formed documents: XML syntax, attribute, with a Python expression inside the quotes ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  




SQLObject
SQLObject is a Python object-relational mapper between a SQL database and Python objects. It is experiencing community popularity, and forms a part of many applications (e.g., TurboGears). It is very similar to Ruby on Rails' ActiveRecord in operation in that it uses class definitions to form table schemas, and utilizes the language's reflection and dynamism to be useful. SQLObject supports a number of common database backends: included in the distribution are MariaDB, MySQL, PostgreSQL, SQLite, Sybase SQL Server, MaxDB, Microsoft SQL Server and Firebird. The first version of SQLObject was publicly released in October 2002. See also * TurboGears * SQLAlchemy * Storm A storm is any disturbed state of the natural environment or the atmosphere of an astronomical body. It may be marked by significant disruptions to normal conditions such as strong wind, tornadoes, hail, thunder and lightning (a thunderstor ... References External links * Object–relational mapping ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

Python (programming Language)
Python is a high-level programming language, high-level, general-purpose programming language. Its design philosophy emphasizes code readability with the use of significant indentation. Python is type system#DYNAMIC, dynamically type-checked and garbage collection (computer science), garbage-collected. It supports multiple programming paradigms, including structured programming, structured (particularly procedural programming, procedural), object-oriented and functional programming. It is often described as a "batteries included" language due to its comprehensive standard library. Guido van Rossum began working on Python in the late 1980s as a successor to the ABC (programming language), ABC programming language, and he first released it in 1991 as Python 0.9.0. Python 2.0 was released in 2000. Python 3.0, released in 2008, was a major revision not completely backward-compatible with earlier versions. Python 2.7.18, released in 2020, was the last release of ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Python Paste
Python Paste, often simply called paste, is a set of utilities for web development in Python. Paste has been described as "a framework for web frameworks". The Python Paste package contains Python modules that help in implementing WSGI middleware. The package includes a WSGI wrapper for CGI applications. It also includes a simple webserver that can produce WSGI requests. WSGI middleware The WSGI standard is an interface that allows applications to use Python code to handle HTTP requests. A WSGI application is passed a Python representation of an HTTP request by an application, and returns content which will normally eventually be rendered by a web browser. A common use for this is when a web server serves content created by Python code. There are, however, other uses: WSGI middleware is Python code that receives a WSGI request and then performs logic based upon this request, before passing the request on to a WSGI application or more WSGI middleware. WSGI middleware appe ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

SQLAlchemy
SQLAlchemy is an open-source Python library that provides an SQL toolkit (called "SQLAlchemy Core") and an object–relational mapper (ORM) for database interactions. It allows developers to work with databases using Python objects, enabling efficient and flexible database access. Description SQLAlchemy offers tools for database schema generation, querying, and object-relational mapping. Key features include: * A comprehensive embedded domain-specific language for SQL in Python called "SQLAlchemy Core" that provides means to construct and execute SQL queries. * A powerful ORM that allows the mapping of Python classes to database tables. * Support for database schema migrations. * Compatibility with multiple database backends. * Tools for database connection A database connection is a facility in computer science that allows client software to talk to database server software, whether on the same machine or not. A connection is required to send commands and receive answers, ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Web Server Gateway Interface
The Web Server Gateway Interface (WSGI, pronounced ''whiskey'' or ) is a simple calling convention for web servers to forward requests to web applications or frameworks written in the Python programming language. The current version of WSGI, version 1.0.1, is specified in Python Enhancement Proposal (PEP) 3333. WSGI was originally specified as PEP-333 in 2003. PEP-3333, published in 2010, updates the specification for . Background In 2003, Python web frameworks were typically written against only CGI, FastCGI, mod_python, or some other custom API of a specific web server. To quote PEP 333: Python currently boasts a wide variety of web application frameworks, such as Zope, Quixote, Webware, SkunkWeb, PSO, and Twisted Web -- to name just a few. This wide variety of choices can be a problem for new Python users, because generally speaking, their choice of web framework will limit their choice of usable web servers, and vice versa... By contrast, although Java has just as ma ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Pylons (web Framework)
Pylons Project is an open-source organization that develops a set of web application technologies written in Python. Initially the project was a single web framework called Pylons, but after the merger with the repoze.bfg framework under the new name Pyramid, the Pylons Project now consists of multiple related web application technologies. Pyramid Pyramid is an open source web framework written in Python and is based on WSGI. It is a minimalistic web framework inspired by Zope, Pylons and Django. Originally called "repoze.bfg", Pyramid gathered attention mostly in the Zope and Plone community as the Open Society Institute's KARL project migrated from Plone to BFG. In 2010 it was announced that the Pylons framework will move over to using BFG as a base in version 1.5. As a result of the inclusion of BFG into the Pylons project, BFG was renamed Pyramid. Features Pyramid is a minimalistic, platform-independent web framework. It is persistence agnostic and is integrated both ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  




Nginx
(pronounced "engine x" , stylized as NGINX or nginx) is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache. The software was created by Russian developer Igor Sysoev and publicly released in 2004. Nginx is free and open-source software, released under the terms of the 2-clause BSD license. A large fraction of web servers use Nginx, often as a load balancer. A company of the same name was founded in 2011 to provide support and ''NGINX Plus'' paid software. In March 2019, the company was acquired by F5 for $670 million. Popularity , W3Tech's web server count of all web sites ranked Nginx first with 33.8%. Apache was second at 26.4% and Cloudflare Server third at 23.4%. , Netcraft estimated that Nginx served 20.11% of the million busiest websites with Cloudflare a little ahead at 22.99%. Apache at 17.83% and Microsoft Internet Information Services at 4.16% rounded out the top four servers for the busiest websites. Some o ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

JSON
JSON (JavaScript Object Notation, pronounced or ) is an open standard file format and electronic data interchange, data interchange format that uses Human-readable medium and data, human-readable text to store and transmit data objects consisting of name–value pairs and array data type, arrays (or other serialization, serializable values). It is a commonly used data format with diverse uses in electronic data interchange, including that of web applications with server (computing), servers. JSON is a Language-independent specification, language-independent data format. It was derived from JavaScript, but many modern programming languages include code to generate and parse JSON-format data. JSON filenames use the extension .json. Douglas Crockford originally specified the JSON format in the early 2000s. Transcript: He and Chip Morningstar sent the first JSON message in April 2001. Naming and pronunciation The 2017 international standard (ECMA-404 and ISO/IEC 21778:2017) ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

Ajax (programming)
Ajax (also AJAX ; short for "asynchronous I/O, asynchronous JavaScript and XML") is a set of web development techniques that uses various web technologies on the client-side to create asynchronous web applications. With Ajax, web applications can send and retrieve data from a Web server, server asynchronously (in the background) without interfering with the display and behaviour of the existing page. By decoupling the data exchange, data interchange layer from the presentation layer, Ajax allows web pages and, by extension, web applications, to change content dynamically without the need to reload the entire page. In practice, modern implementations commonly utilize JSON instead of XML. Ajax is not a technology, but rather a programming pattern. Hypertext Markup Language, HTML and Cascading Style Sheets, CSS can be used in combination to mark up and style information. The webpage can be modified by JavaScript to dynamically display (and allow the user to interact with) the new i ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]