commit | author | age
|
9974be
|
1 |
.. _index: |
f70c23
|
2 |
|
edd915
|
3 |
================================================= |
ee2945
|
4 |
The Pyramid Web Application Development Framework |
edd915
|
5 |
================================================= |
f70c23
|
6 |
|
fd5ae9
|
7 |
:app:`Pyramid` is a small, fast, down-to-earth Python web application |
a3a27a
|
8 |
development framework. It is developed as part of the `Pylons Project |
e7b5fe
|
9 |
<http://docs.pylonsproject.org/>`_. It is licensed under a `BSD-like license |
a3a27a
|
10 |
<http://repoze.org/license.html>`_. |
CM |
11 |
|
d4bbb6
|
12 |
Here is one of the simplest :app:`Pyramid` applications you can make: |
d36b56
|
13 |
|
a98c01
|
14 |
.. literalinclude:: narr/helloworld.py |
d36b56
|
15 |
|
d4bbb6
|
16 |
When saved to ``helloworld.py``, the above application can be run via: |
e17da6
|
17 |
|
DJ |
18 |
.. code-block:: text |
|
19 |
|
|
20 |
$ easy_install pyramid |
|
21 |
$ python helloworld.py |
|
22 |
serving on 0.0.0.0:8080 view at http://127.0.0.1:8080 |
|
23 |
|
d3c67e
|
24 |
And when you visit ``http://localhost:8080/hello/world`` in a browser, you |
CM |
25 |
will see the text ``Hello, world!``. |
e17da6
|
26 |
|
d4bbb6
|
27 |
See :ref:`firstapp_chapter` for a full explanation of how this application |
CM |
28 |
works. Read the :ref:`html_narrative_documentation` to understand how |
5ab0f3
|
29 |
:app:`Pyramid` is designed to scale from simple applications like this to |
CM |
30 |
very large web applications. |
d36b56
|
31 |
|
de449d
|
32 |
Front Matter |
CM |
33 |
============ |
878328
|
34 |
|
CM |
35 |
.. toctree:: |
|
36 |
:maxdepth: 1 |
|
37 |
|
|
38 |
copyright.rst |
|
39 |
conventions.rst |
0797f0
|
40 |
|
a9688f
|
41 |
"What's New" Documents |
CM |
42 |
====================== |
|
43 |
|
|
44 |
.. toctree:: |
0ee9c2
|
45 |
:maxdepth: 1 |
a9688f
|
46 |
|
a8c81d
|
47 |
whatsnew-1.2 |
0ee9c2
|
48 |
whatsnew-1.1 |
2ce665
|
49 |
whatsnew-1.0 |
a9688f
|
50 |
|
55860e
|
51 |
.. _html_narrative_documentation: |
d36b56
|
52 |
|
9e3bdb
|
53 |
Narrative documentation |
e99f7a
|
54 |
======================= |
9e3bdb
|
55 |
|
CM |
56 |
Narrative documentation in chapter form explaining how to use |
fd5ae9
|
57 |
:app:`Pyramid`. |
f70c23
|
58 |
|
CM |
59 |
.. toctree:: |
9e3bdb
|
60 |
:maxdepth: 2 |
f70c23
|
61 |
|
9e3bdb
|
62 |
narr/introduction |
102d19
|
63 |
narr/install |
9ec2d6
|
64 |
narr/firstapp |
e17da6
|
65 |
narr/configuration |
54f2bb
|
66 |
narr/project |
c6e58b
|
67 |
narr/startup |
c5f24b
|
68 |
narr/urldispatch |
d6798e
|
69 |
narr/views |
a59c78
|
70 |
narr/renderers |
8271f7
|
71 |
narr/templates |
8a1b50
|
72 |
narr/viewconfig |
88b9ee
|
73 |
narr/assets |
888d65
|
74 |
narr/webob |
04ebd5
|
75 |
narr/sessions |
e17c8d
|
76 |
narr/events |
47b4d3
|
77 |
narr/environment |
1ae7af
|
78 |
narr/logging |
3d338e
|
79 |
narr/paste |
ae4c57
|
80 |
narr/commandline |
8cb682
|
81 |
narr/i18n |
CM |
82 |
narr/vhosting |
6ee49a
|
83 |
narr/testing |
8cb682
|
84 |
narr/resources |
CM |
85 |
narr/muchadoabouttraversal |
|
86 |
narr/traversal |
|
87 |
narr/security |
|
88 |
narr/hybrid |
c8cf22
|
89 |
narr/hooks |
10fd8f
|
90 |
narr/advconfig |
e6855b
|
91 |
narr/extending |
03b756
|
92 |
narr/router |
538344
|
93 |
narr/threadlocals |
37bcb7
|
94 |
narr/zca |
8fd58c
|
95 |
|
9d68f9
|
96 |
Tutorials |
CM |
97 |
========= |
|
98 |
|
fd5ae9
|
99 |
Detailed tutorials explaining how to use :app:`Pyramid` to build |
CM |
100 |
various types of applications and how to deploy :app:`Pyramid` |
878328
|
101 |
applications to various platforms. |
841dcf
|
102 |
|
CM |
103 |
.. toctree:: |
6638cf
|
104 |
:maxdepth: 2 |
841dcf
|
105 |
|
edd915
|
106 |
tutorials/wiki2/index.rst |
0aed1c
|
107 |
tutorials/wiki/index.rst |
f1b2cd
|
108 |
tutorials/bfg/index.rst |
5810ad
|
109 |
tutorials/gae/index.rst |
9c5a10
|
110 |
tutorials/modwsgi/index.rst |
e2c34f
|
111 |
|
04bee5
|
112 |
Reference Material |
CM |
113 |
================== |
|
114 |
|
c9c3c4
|
115 |
Reference material includes documentation for every :app:`Pyramid` API. |
04bee5
|
116 |
|
CM |
117 |
.. toctree:: |
|
118 |
:maxdepth: 2 |
|
119 |
|
|
120 |
api |
|
121 |
|
a53cbf
|
122 |
Detailed Change History |
CM |
123 |
======================= |
9d68f9
|
124 |
|
CM |
125 |
.. toctree:: |
841dcf
|
126 |
:maxdepth: 1 |
9d68f9
|
127 |
|
CM |
128 |
changes |
|
129 |
|
fbfea7
|
130 |
Design Documentation |
CM |
131 |
==================== |
|
132 |
|
|
133 |
.. toctree:: |
6b0315
|
134 |
:maxdepth: 1 |
fbfea7
|
135 |
|
CM |
136 |
designdefense |
|
137 |
|
e99f7a
|
138 |
Sample Applications |
CM |
139 |
=================== |
edd915
|
140 |
|
2197ff
|
141 |
`cluegun <https://github.com/Pylons/cluegun>`_ is a simple pastebin |
CM |
142 |
application based on Rocky Burt's `ClueBin |
e99f7a
|
143 |
<http://pypi.python.org/pypi/ClueBin/0.2.3>`_. It demonstrates form |
124238
|
144 |
processing, security, and the use of :term:`ZODB` within a :app:`Pyramid` |
8c8697
|
145 |
application. Check this application out via: |
CM |
146 |
|
|
147 |
.. code-block:: text |
e99f7a
|
148 |
|
2197ff
|
149 |
git clone git://github.com/Pylons/cluegun.git |
e99f7a
|
150 |
|
2197ff
|
151 |
`virginia <https://github.com/Pylons/virginia>`_ is a very simple dynamic |
CM |
152 |
file rendering application. It is willing to render structured text |
|
153 |
documents, HTML documents, and images from a filesystem directory. An |
|
154 |
earlier version of this application runs the `repoze.org |
8c8697
|
155 |
<http://repoze.org>`_ website. Check this application out via: |
CM |
156 |
|
|
157 |
.. code-block:: text |
e99f7a
|
158 |
|
2197ff
|
159 |
git clone git://github.com/Pylons/virginia.git |
e99f7a
|
160 |
|
2197ff
|
161 |
`shootout <https://github.com/Pylons/shootout>`_ is an example "idea |
21d084
|
162 |
competition" application by Carlos de la Guardia and Lukasz Fidosz. It |
CM |
163 |
demonstrates :term:`URL dispatch`, simple authentication, integration |
|
164 |
with `SQLAlchemy <http://www.sqlalchemy.org/>`_ and ``pyramid_simpleform``. |
|
165 |
Check this application out of version control via: |
8c8697
|
166 |
|
CM |
167 |
.. code-block:: text |
9e1f15
|
168 |
|
2197ff
|
169 |
git clone git://github.com/Pylons/shootout.git |
CM |
170 |
|
|
171 |
Older Sample Applications (repoze.bfg) |
|
172 |
====================================== |
|
173 |
|
|
174 |
.. note:: |
|
175 |
|
|
176 |
These applications are for an older version of :app:`Pyramid`, which was |
|
177 |
named :mod:`repoze.bfg`. They won't work unmodified under Pyramid, but |
|
178 |
might provide useful clues. |
9e1f15
|
179 |
|
a864bd
|
180 |
`bfgsite <http://svn.repoze.org/bfgsite/trunk>`_ is the software which |
aca8a7
|
181 |
runs the `bfg.repoze.org <http://bfg.repoze.org>`_ website. It |
a864bd
|
182 |
demonstrates integration with Trac, and includes several |
CM |
183 |
mini-applications such as a pastebin and tutorial engine. Check a |
8c8697
|
184 |
buildout for this application out of Subversion via: |
CM |
185 |
|
|
186 |
.. code-block:: text |
a864bd
|
187 |
|
CM |
188 |
svn co http://svn.repoze.org/buildouts/bfgsite/ bfgsite_buildout |
|
189 |
|
|
190 |
`KARL <http://karlproject.org>`_ is a moderately-sized application |
af17cc
|
191 |
(roughly 70K lines of Python code) built on top of :mod:`repoze.bfg` |
f30488
|
192 |
and other Repoze software. It is an open source web system for |
CM |
193 |
collaboration, organizational intranets, and knowledge management, It |
406572
|
194 |
provides facilities for wikis, calendars, manuals, searching, tagging, |
CM |
195 |
commenting, and file uploads. See the `KARL site |
f30488
|
196 |
<http://karlproject.org>`_ for download and installation details. |
a864bd
|
197 |
|
0797f0
|
198 |
Support and Development |
CM |
199 |
======================= |
|
200 |
|
e7b5fe
|
201 |
The `Pylons Project web site <http://pylonsproject.org/>`_ is the main online |
fd5ae9
|
202 |
source of :app:`Pyramid` support and development information. |
1dad96
|
203 |
|
edd915
|
204 |
To report bugs, use the `issue tracker |
CM |
205 |
<http://github.com/Pylons/pyramid/issues>`_. |
0797f0
|
206 |
|
CM |
207 |
If you've got questions that aren't answered by this documentation, |
a6a402
|
208 |
contact the `Pylons-devel maillist |
CM |
209 |
<http://groups.google.com/group/pylons-devel>`_ or join the `#pylons |
edd915
|
210 |
IRC channel <irc://irc.freenode.net/#pylons>`_. |
0797f0
|
211 |
|
fd5ae9
|
212 |
Browse and check out tagged and trunk versions of :app:`Pyramid` via |
edd915
|
213 |
the `Pyramid GitHub repository <http://github.com/Pylons/pyramid/>`_. |
8c8697
|
214 |
To check out the trunk via ``git``, use this command: |
CM |
215 |
|
|
216 |
.. code-block:: text |
0797f0
|
217 |
|
edd915
|
218 |
git clone git@github.com:Pylons/pyramid.git |
0797f0
|
219 |
|
ee5fb2
|
220 |
To find out how to become a contributor to :app:`Pyramid`, please see the |
CM |
221 |
`contributor's section of the documentation |
e7b5fe
|
222 |
<http://docs.pylonsproject.org/index.html#contributing>`_. |
0797f0
|
223 |
|
878328
|
224 |
Index and Glossary |
f70c23
|
225 |
================== |
CM |
226 |
|
1b8f7a
|
227 |
* :ref:`glossary` |
878328
|
228 |
* :ref:`genindex` |
CM |
229 |
* :ref:`search` |