devboard: Juno prosty i lekki framework - devboard

Skocz do zawartości

Strona 1 z 1
  • Nie możesz napisać tematu
  • Nie możesz odpowiedzieć

Juno prosty i lekki framework wprowadzenie

#1 Użytkownik nie jest zalogowany   meverone

  • Młodszy Programista
  • PipPip
  • Grupa Administratorzy
  • Postów 21
  • Rejestracja 02-grudzień 08
  • Płeć:Male

Napisano 09 sierpień 2009 - 17:40

Juno, a co to takiego ?
Juno jest "lekkim" frameworkiem webowym do szybkiego tworzenia aplikacji, napisanym w Pythonie. Dlaczego akurat powinniście wybrać Juno? Argumentów można podać kilka ale najważniejsze jest to, że jest on lekki i nie zajmuje wiele miejsca. Dodatkowym atutem jest to, że nie posiada niepotrzebnych bajerów tylko to co jest najważniejsze - a to duży plus. A jeśli czegoś nie ma? To możemy łatwo zintegrować z Juno.

Instalacja?
Instalacja jest bardzo prosta. Mamy kilka opcji:

easy_install Juno


Pobrać repozytorium z GitHub i

python setup.py install


Lub też pobrać sam plik juno.py z repozytorium. Hierarchia plików w aplikacji:

/default.py - plik z kodem naszej aplikacji
/juno.py - Juno framework


Biblioteki wymagane:

Biblioteki opcjonalne:


Przykładowa aplikacja z użyciem Juno

default.py
#!/usr/bin/python
# -*- coding: utf-8 -*-

from juno import *
import werkzeug

@route("/")
def index(web):
 return "Hello World!"
  
@get("/hello/:name")
def news(web, name):
  return "Hello %s"% name

if __name__ == "__main__":
  app = run("wsgi")
  werkzeug.run_simple("adresstrony.pl", 8008, app, use_reloader=True)


Widoki
Standardowo Juno wykorzystuje silnik jinja2, ale także może używać Mako zmieniając 'template_lib'.

init({'template_lib': 'mako'})


Strony błędów
Należy utworzyć w katalogu templates pliki: 403.html, 404.html, 500.html

./templates/403.html
./templates/404.html
./templates/500.html


Przykładowy plik widoku

templates/template.html
Zmienna1 = {{zmienna1}} <br />
<!-- Pętla for -->
{% for i in range(1, 10) %}
 {{i}}
{% endfor %}
<!-- instrukcja warunkowa -->
{% if test %}
 TRUE
{% else %}
 FALSE
{% endif %}


default.py
#!/usr/bin/python
# -*- coding: utf-8 -*-

from juno import *
import werkzeug

@route('/')
def index(web):
  template('template.html', zmienna1="testowa", test = True)
  
@route('/ver2')
def ver2(web):
  template('template.html', {'zmienna1': 'testowa', 'test': True})

if __name__ == "__main__":
  app = run("wsgi")
  werkzeug.run_simple("adresstrony.pl", 8008, app, use_reloader=True)

0

Strona 1 z 1
  • Nie możesz napisać tematu
  • Nie możesz odpowiedzieć

Użytkownicy przeglądający ten temat: 1
0 użytkowników, 1 gości, 0 anonimowych