0
Python Web
Microframework
     Markus Zapke-Gründemann
Leipzig Python User Group - 8.9.2009
Web Microframework
Python 2.5 oder 3.x
WSGI
(Web Server Gateway Interface)
Routing
POST, GET, PUT,
DELETE, HEAD
Cookies
Templates
Einfache Validatoren
Key/Value Datenbank
1 Datei
936 Zeilen
30460 Byte
MIT Lizenz
GitHub
bottle.paws.de
Beispiel 1
1   from bottle import route, run
2
3   @route('/')
4   def index():
5       return 'Hello World!'
6
7   run()
Beispiel 2
1   from bottle import route, run
2
3   @route('/hello/:name')
4   def index(name):
5       return 'Hello %s!' ...
Beispiel 3
1   from bottle import route, run, send_file
2
3   @route('/static/:filename')
4   def static_file(filename):
5...
Beispiel 4
1   from bottle import route, run, send_file
2
3   @route(r'/static/(?P<filename>.*)')
4   def static_file(file...
Beispiel 5
1   from bottle import route, run, template
2
3   @route('/welcome/:names')
4   def welcome(names):
5       nam...
Beispiel 6
1   from bottle import request, route, run
2
3   @route('/user-agent')
4   def user_agent():
5       return req...
Beispiel 7
 1   from bottle import route, run
 2
 3   @route(r'/get_object/(?P<id>[0-9]+)')
 4   def get_id(id):
 5       ...
Beispiel 8
1   from bottle import route, run, validate
2
3   @route('/validate/:id/:price/:csv')
4   @validate(id=int, pri...
Lizenz
 Dieses Werk ist unter einem Creative Commons
    Namensnennung-Weitergabe unter gleichen
Bedingungen 3.0 Unported ...
Bottle - Python Web Microframework
Upcoming SlideShare
Loading in...5
×

Bottle - Python Web Microframework

2,674

Published on

Vorstellung des Python Web Microframeworks Bottle.

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
2,674
On Slideshare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
25
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Transcript of "Bottle - Python Web Microframework"

  1. 1. Python Web Microframework Markus Zapke-Gründemann Leipzig Python User Group - 8.9.2009
  2. 2. Web Microframework
  3. 3. Python 2.5 oder 3.x
  4. 4. WSGI (Web Server Gateway Interface)
  5. 5. Routing
  6. 6. POST, GET, PUT, DELETE, HEAD
  7. 7. Cookies
  8. 8. Templates
  9. 9. Einfache Validatoren
  10. 10. Key/Value Datenbank
  11. 11. 1 Datei 936 Zeilen 30460 Byte
  12. 12. MIT Lizenz
  13. 13. GitHub
  14. 14. bottle.paws.de
  15. 15. Beispiel 1 1 from bottle import route, run 2 3 @route('/') 4 def index(): 5 return 'Hello World!' 6 7 run()
  16. 16. Beispiel 2 1 from bottle import route, run 2 3 @route('/hello/:name') 4 def index(name): 5 return 'Hello %s!' % name 6 7 run()
  17. 17. Beispiel 3 1 from bottle import route, run, send_file 2 3 @route('/static/:filename') 4 def static_file(filename): 5 send_file(filename, root='/path/to/static/files') 6 7 run()
  18. 18. Beispiel 4 1 from bottle import route, run, send_file 2 3 @route(r'/static/(?P<filename>.*)') 4 def static_file(filename): 5 send_file(filename, root='/path/to/static/files') 6 7 run()
  19. 19. Beispiel 5 1 from bottle import route, run, template 2 3 @route('/welcome/:names') 4 def welcome(names): 5 names = names.split(',') 6 return template('welcome', names=names) 7 8 run() 1 <html> 2 <head> 3 <title>Welcome!</title> 4 </head> 5 <body> 6 <h1>Welcome!</h1> 7 %for name in names: 8 <p>Hello {{name}}!</p> 9 %end 10 </body> 11 </html>
  20. 20. Beispiel 6 1 from bottle import request, route, run 2 3 @route('/user-agent') 4 def user_agent(): 5 return request._environ.get('HTTP_USER_AGENT') 6 7 run()
  21. 21. Beispiel 7 1 from bottle import route, run 2 3 @route(r'/get_object/(?P<id>[0-9]+)') 4 def get_id(id): 5 return "Object ID: %d" % int(id) 6 7 @route(r'/get_object/(?P<slug>[-w]+)') 8 def get_slug(slug): 9 return "Slug: %s" % slug 10 11 run()
  22. 22. Beispiel 8 1 from bottle import route, run, validate 2 3 @route('/validate/:id/:price/:csv') 4 @validate(id=int, price=float, csv=lambda x: map(int, x.split(','))) 5 def validate_args(id, price, csv): 6 return "Id: %d, Price: %f, List: %s" % (id, price, repr(csv)) 7 8 run()
  23. 23. Lizenz Dieses Werk ist unter einem Creative Commons Namensnennung-Weitergabe unter gleichen Bedingungen 3.0 Unported Lizenzvertrag lizenziert. Um die Lizenz anzusehen, gehen Sie bitte zu http://creativecommons.org/licenses/by-sa/3.0/ oder schicken Sie einen Brief an Creative Commons, 171 Second Street, Suite 300, San Francisco, California 94105, USA.
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×