Seite 1 von 2
redirect
Verfasst: Montag 17. Dezember 2007, 20:17
von debian75
salve,
kann ich irgendwie zu einer url redirecten ohne dass ich ein hilfsfile benötige ? also ich könnte ein html oder so aufrufen, welches das macht, aber lieber wärs mir das in einer funktion zu machen.
also sowas:
Code: Alles auswählen
def redirect (url):
---> weiterleitung zu der url
redirect(http://www.google.com)
gibt es sowas ?
Verfasst: Montag 17. Dezember 2007, 20:18
von debian75
forward würde auch gehen
Verfasst: Montag 17. Dezember 2007, 20:21
von BlackVivi
Öhm oO... Sowas?
Code: Alles auswählen
In [3]: import webbrowser
In [4]: webbrowser.open("http://google.de")
Out[4]: True
Verfasst: Montag 17. Dezember 2007, 20:24
von debian75
thnx

Verfasst: Montag 17. Dezember 2007, 20:32
von gerold
Hallo debian75!
Oder meintest du serverseitig aus CherryPy heraus?
mfg
Gerold

Verfasst: Montag 17. Dezember 2007, 20:41
von debian75
thnx

Verfasst: Montag 17. Dezember 2007, 20:48
von mitsuhiko
Oder meintest du Serverseitig aus einer WSGI Anwendung heraus? Mit Werkzeug ganz einfach:
Code: Alles auswählen
from werkzeug import redirect
return redirect("http://www.example.org/")
*SCNR*
Verfasst: Montag 17. Dezember 2007, 21:12
von debian75
hehe, jetzt überschlagen sich die möglichkeiten
werkzeug hab ich im moment nicht, ich wühle mich noch durch gerolds cheerypy + cheetah kombination durch

Verfasst: Montag 17. Dezember 2007, 21:59
von mitsuhiko
debian75 hat geschrieben:werkzeug hab ich im moment nicht, ich wühle mich noch durch gerolds cheerypy + cheetah kombination durch

Jeder macht mal Fehler ^^
Verfasst: Dienstag 18. Dezember 2007, 00:08
von gerold
mitsuhiko hat geschrieben:debian75 hat geschrieben:werkzeug hab ich im moment nicht, ich wühle mich noch durch gerolds cheerypy + cheetah kombination durch

Jeder macht mal Fehler ^^
Hallo mitsuhiko!
Für alle, die nicht wissen was du damit meinst. Es geht um CherryPy und die von mir inzwischen bevorzugte Kombination mit Cheetah:
>>
http://halvar.at/python/cherrypy_cheetah/ <<
Es gibt Leute die ein gutes, gereiftes Programm -- und dafür halte ich
CherryPy -- sehr schätzen. Vor zehn Jahren dachte ich auch noch, dass ich jedem Hype nachrennen muss. Inzwischen schätze ich geradlinige, durchdachte Tools viel mehr, da sie mich viel schneller (mit weniger Lernaufwand) zum Ziel bringen.
Auch Cheetah hat diese Vorteile. Nichtprogrammierer verstehen schon nach kurzer Erklärung, wie man grundlegend damit umgehen kann. Auch wenn man sich erst an das Doppelkreuz "#" als Einleitung für Cheetah-Befehlszeilen gewöhnen muss.
Und die Cheetah-Vorlagenvererbung erspart einem viel Tipparbeit. Man erstellt eine Hauptvorlage. Untervorlagen erben von der Hauptvorlage und überschreiben nur die Blöcke, die sich von der Hauptvorlage unterscheiden sollen. -- Sehr einfach und sehr flexibel.
lg
Gerold

Verfasst: Dienstag 18. Dezember 2007, 00:34
von debian75
also für meine zwecke, eine sehr kleine website, finde ich diese kombination im moment super.
ich denke ich werde dann wieder ein bisschen fluchen sobald ich nen gescheiten webserver haben will, sprich das ganze irgendwie mit lighttpd oder apache laufen lassen will....aber das ist wohl bei python generell so.
Verfasst: Dienstag 18. Dezember 2007, 10:50
von mitsuhiko
gerold hat geschrieben:Es gibt Leute die ein gutes, gereiftes Programm -- und dafür halte ich
CherryPy -- sehr schätzen. Vor zehn Jahren dachte ich auch noch, dass ich jedem Hype nachrennen muss. Inzwischen schätze ich geradlinige, durchdachte Tools viel mehr, da sie mich viel schneller (mit weniger Lernaufwand) zum Ziel bringen.
Wieso Hype? CherryPy ist doch Dank TurboGears genauso gehypted wie Django. Nur halt, dass TurboGears die Leute wegrennen.
Auch Cheetah hat diese Vorteile. Nichtprogrammierer verstehen schon nach kurzer Erklärung, wie man grundlegend damit umgehen kann. Auch wenn man sich erst an das Doppelkreuz "#" als Einleitung für Cheetah-Befehlszeilen gewöhnen muss.
Wenn man für das Erlernen der Basics einer Template Engine länger als fünf Minuten braucht hat die Template Engine versagt oder die Template Engine nutzt XML, wie Genshi. Dort musst du dir noch die XML Basics erarbeiten, wenn du sie nicht kennst.
Cheetah war vor Jahren die fortschrittlichste Python Template Engine und sie hat sicher eingen anderen Template Engines immer wieder als Anhaltspunkt gedient. Dennoch ist Django/Jinja/Mako wesentlich einsteigerfreundlicher als Cheetah.
Und die Cheetah-Vorlagenvererbung erspart einem viel Tipparbeit. Man erstellt eine Hauptvorlage. Untervorlagen erben von der Hauptvorlage und überschreiben nur die Blöcke, die sich von der Hauptvorlage unterscheiden sollen. -- Sehr einfach und sehr flexibel.
Das hat jede Template Engine
Meine Ablehnung gegenüber CherryPy auf den Punkt gebracht: Ich hab dank TurboGears kurzzeitig mit dem Quellcode dahinter und dem Config System zu tun gehabt und das ist ein einziger riesiger Hack. Nicht ganz so schlimm wie Karrigell. CherryPy ist zwar Gott sei Dank seit 3.0 WSGI kompatibel, aber was es mit der Engine anstellt ist abartig. In der Hälfte der Umgebungen wo es läuft musst du einen Exit Handler definieren damit die Engine wieder sauber runterfährt und schlimmer, in jedem Kindprozess schauen ob die Engine noch nicht läuft und dann starten.
gerold: Werd glücklich mit CherryPy, Karrigell und Cheetah, aber drücks bitte nicht jedem aufs Auge. Wer mit der Konfiguration das ganze in einen Apachen integrieren will hat so viele Schmerzen wie sonst mit keiner.
Python Webentwicklung ist spannend, einfach und kann PHP und Ruby on Rails in jeder Weise ersetzten.
@debian75: ist es nicht. Das ist sehr einfach und alle meine Python Anwendungen laufen hervoragend und einfach hinter Apache. Allerdings hat dieses Forum so die Eigenheit, dass gerold's momentane Lieblingsframeworks immer eigene Wege gehen und traurigerweise viele Neuankömmlinge blind hinten nach trotten.
Verfasst: Dienstag 18. Dezember 2007, 11:16
von gerold
Hallo mitsuhiko!
mitsuhiko hat geschrieben:Wieso Hype? CherryPy ist doch Dank TurboGears genauso gehypted wie Django. Nur halt, dass TurboGears die Leute wegrennen.
Bitte vergleiche TurboGears und Django nicht mit CherryPy. TurboGears und Django sind Monster. CherryPy kümmert sich stattdessen nur um die Dinge, die für den Webprogrammierer lästig aber trotzdem wichtig sind.
- Auslieferung der Daten
- Sessionhandling
- Authentifizierung
- Threading
mitsuhiko hat geschrieben:Cheetah war vor Jahren die fortschrittlichste Python Template Engine und sie hat sicher eingen anderen Template Engines immer wieder als Anhaltspunkt gedient.
Und es entwickelt sich ständig weiter.
mitsuhiko hat geschrieben:Untervorlagen erben von der Hauptvorlage und überschreiben nur die Blöcke, die sich von der Hauptvorlage unterscheiden sollen. -- Sehr einfach und sehr flexibel.
Das hat jede Template Engine
Das kann ich nicht bestätigen.
mitsuhiko hat geschrieben:Meine Ablehnung gegenüber CherryPy auf den Punkt gebracht: Ich hab dank TurboGears kurzzeitig mit dem Quellcode dahinter und dem Config System zu tun gehabt
Alles entwickelt sich weiter. Außerdem ist TurboGears NICHT CherryPy.
mitsuhiko hat geschrieben:gerold: Werd glücklich mit CherryPy, Karrigell und Cheetah, aber drücks bitte nicht jedem aufs Auge.
mitsuhiko: Werd glücklich mit deinen WSGI-Tools, aber drück sie nicht jedem aufs Auge. Und noch viel wichtiger: Versuche nicht jeden von anderen Lösungen abzubringen, nur weil du dein WSGI pushen möchtest.
mfg
Gerold

Verfasst: Dienstag 18. Dezember 2007, 11:24
von mitsuhiko
gerold hat geschrieben:- Auslieferung der Daten
- Sessionhandling
- Authentifizierung
- Threading
Threading... Bis auf diesen Punkt ist das ja alles schön und gut, aber das bekommt man auch in weniger als 17.000 Zeilen Code hin
Und es entwickelt sich ständig weiter.
Tut sich jede nicht tote Template Engine.
Das kann ich nicht bestätigen.
Welche nicht? Von den Zope Engines mal abgesehen.
Alles entwickelt sich weiter. Außerdem ist TurboGears NICHT CherryPy.
Aber der HTTP Layer ist. Und CherryPy tut noch immer weh wenn man sich den Quellcode ansieht.
Werd glücklich mit deinen WSGI-Tools, aber drück sie nicht jedem aufs Auge. Und noch viel wichtiger: Versuche nicht jeden von anderen Lösungen abzubringen, nur weil du dein WSGI pushen möchtest.
Es ist leider nicht mein WSGI, sondern auf den genialen Einfall kam PJE. Und anscheind wirst auch du glücklich mit WSGI weil CherryPy ist nichts anders.
Und nein, ich pushe meine WSGI tools hier nicht, sondern rede nur schlecht über CherryPy, das ist ein elementarer Unterschied

Ich find nur die Polarisierung hier auf „gerold's favourite framework“ etwas schmerzend.
Verfasst: Dienstag 18. Dezember 2007, 12:44
von Leonidas
gerold hat geschrieben:Bitte vergleiche TurboGears und Django nicht mit CherryPy. TurboGears und Django sind Monster. CherryPy kümmert sich stattdessen nur um die Dinge, die für den Webprogrammierer lästig aber trotzdem wichtig sind.
- Auslieferung der Daten
- Sessionhandling
- Authentifizierung
- Threading
Auslieferung der Daten - dafür gibt es WSGI-Tools wie das in Python *mitgelieferte* ``wsgiref`` und Luke Arnos``static``.
Sessionhandling - Dafür gibt es Beaker. mitsuhiko hat noch securesession implementiert, was noch etwas anders funktioniert.
Authentifizierung - Dafür gibt es WSGIAuth, AuthKit WSGIUtils. Damit bekommt man sogar OpenID-Authentifizierung geschenkt.
gerold hat geschrieben:mitsuhiko hat geschrieben:Cheetah war vor Jahren die fortschrittlichste Python Template Engine und sie hat sicher eingen anderen Template Engines immer wieder als Anhaltspunkt gedient.
Und es entwickelt sich ständig weiter.
Die anderen Ebenso. Und wenn man mal guckt, was für ein Tempo der Mako-Autor da in Sachen Entwicklungsgeschwindigkeit hingelegt hat muss man staunen.
gerold hat geschrieben:mitsuhiko hat geschrieben:Untervorlagen erben von der Hauptvorlage und überschreiben nur die Blöcke, die sich von der Hauptvorlage unterscheiden sollen. -- Sehr einfach und sehr flexibel.
Das hat jede Template Engine
Das kann ich nicht bestätigen.
Django hats, Jinja hats, Mako hats. Wer etwas anderes hat, hat entweder spezielle Anforderungen oder womöglich die falsche Engine.
gerold hat geschrieben:mitsuhiko hat geschrieben:gerold: Werd glücklich mit CherryPy, Karrigell und Cheetah, aber drücks bitte nicht jedem aufs Auge.
mitsuhiko: Werd glücklich mit deinen WSGI-Tools, aber drück sie nicht jedem aufs Auge. Und noch viel wichtiger: Versuche nicht jeden von anderen Lösungen abzubringen, nur weil du dein WSGI pushen möchtest.
mitsuhiko pusht nicht "sein" WSGI sondern Pythons WSGI. WSGI wird über kurz oder lang die gleiche Stellung wie die DB-API einnehmen, an selbstgebackenen Anwendungen festzuhalten macht keinen Sinn, das ist so als würde man sich gegen die DB-API sein, weil ein bestimmtes Datenbankmodul eine angenehmere API hat.
Mit
Repoze geht auch Zope auf WSGI zu, mit
Grok nähert es sich auch an die anderen Frameworks wie Django an.
Interessant ist auch der Artikel
Grok, Repoze, and WSGI beg the question, are webframeworks yesterday's news?
Verfasst: Dienstag 18. Dezember 2007, 13:25
von gerold
Leonidas hat geschrieben:gerold hat geschrieben:mitsuhiko: Werd glücklich mit deinen WSGI-Tools, aber drück sie nicht jedem aufs Auge.
mitsuhiko pusht nicht "sein" WSGI sondern Pythons WSGI.
Hallo Leonidas!
Bei meiner Aussage bezog ich mich definitiv auf "seine WSGI-Tools". WSGI als Python-Webschnittstelle zu etablieren finde ich toll. Und ich finde es auch super, dass CherryPy so gut mit WSGI kann. Es ist positiv, zu wissen, dass man CherryPy mit WSGI-Middleware erweitern kann falls einem eine Funktion fehlt.
Es ist doch schön, dass jeder die Tools einsetzen kann, die ihm/ihr am besten gefallen und mit denen er/sie am schönsten klar kommt.
lg
Gerold

Verfasst: Dienstag 18. Dezember 2007, 14:12
von Leonidas
gerold hat geschrieben:Bei meiner Aussage bezog ich mich definitiv auf "seine WSGI-Tools". WSGI als Python-Webschnittstelle zu etablieren finde ich toll.
Werkzeug ist wohl die direkteste und einfachste Art WSGI einzusetzen. Werkzeug ist ein Nachfahre Colubrids, das genau deswegen entstand weil WSGI direkt zu programmieren einfach unangenehm ist. Der andere direkte Weg wäre Paste, was durchaus an einigen Stellen Werkzeug ähnelt (hat Ian Bicking auch schon gemeint) aber nun ja - für den Einsteiger *wesentlich* komplizierter ist.
CherryPy kann WSGI zwar auch, aber das wurde hinterher eingefügt, so wie in Django (Djangos Middlewares sind keine WSGI Middlewares). Daher ist die Unterstützung nicht ganz so gut wie etwa mit Pylons.
Verfasst: Dienstag 18. Dezember 2007, 14:42
von debian75
also mich wundert nicht, dass ruby on rails derart beliebt ist...die sind sich weigstens einig
irgendwie wurde mein thread hijacked

Verfasst: Dienstag 18. Dezember 2007, 14:54
von mitsuhiko
debian75 hat geschrieben:also mich wundert nicht, dass ruby on rails derart beliebt ist...die sind sich weigstens einig

Weder in Python noch in PHP noch in Ruby Land gibt es eindeutige Lösungen für die Web Frage. Aber in Python sind wengistens alle Frameworks kompatibel, die einen mehr als die anderen
irgendwie wurde mein thread hijacked

Tut mir leid

Verfasst: Dienstag 18. Dezember 2007, 15:31
von Leonidas
debian75 hat geschrieben:also mich wundert nicht, dass ruby on rails derart beliebt ist...die sind sich weigstens einig

Ja. Ehm...
nein. Ich zähle mindestens 6 Frameworks.