Flask: Micro Web Framework based on Good Intentions
Sollte es nicht `message` statt `mesage` heißen? http://flask.pocoo.org/docs/patterns/wtforms/#the-forms
[url=http://wiki.python-forum.de/PEP%208%20%28%C3%9Cbersetzung%29]PEP 8[/url] - Quak!
[url=http://tutorial.pocoo.org/index.html]Tutorial in Deutsch[/url]
[url=http://tutorial.pocoo.org/index.html]Tutorial in Deutsch[/url]
-
- User
- Beiträge: 1790
- Registriert: Donnerstag 28. Oktober 2004, 16:33
- Wohnort: Graz, Steiermark - Österreich
- Kontaktdaten:
Danke. Korrigiert.jbs hat geschrieben:Sollte es nicht `message` statt `mesage` heißen? http://flask.pocoo.org/docs/patterns/wtforms/#the-forms
Im uebrigen wenn was bei der Doku nicht verstaendlich ist, gleich melden. Flask ist mehr Doku als Code
TUFKAB – the user formerly known as blackbird
Hi,
irgendwie bekomme ich das mit Lighttpd-1.4.19 (Debian/Lenny) nicht zum laufen. Er lädt die ganze Zeit die Seite, aber es passiert nichts.
fastcgi.conf
main.py
main.fcgi:
Rechte:
irgendwie bekomme ich das mit Lighttpd-1.4.19 (Debian/Lenny) nicht zum laufen. Er lädt die ganze Zeit die Seite, aber es passiert nichts.
fastcgi.conf
Code: Alles auswählen
server.modules += ( "mod_fastcgi" )
fastcgi.server = ("/main" =>
("main" =>
(
"bin-path" => "/var/www/main/main.fcgi",
"socket" => "/tmp/main-fcgi.sock",
"check-local" => "disable"
)
)
)
Code: Alles auswählen
#!/usr/bin/python
from flask import Flask
app = Flask(__name__)
@app.route("/main")
def hello():
return "Hello World!"
if __name__ == "__main__":
app.run()
Code: Alles auswählen
#!/usr/bin/python
from flup.server.fcgi import WSGIServer
from main import app
WSGIServer(app, bindAddress='/tmp/main-fcgi.sock').run()
Code: Alles auswählen
thomas@home:~$ ls -al /var/www/main/
insgesamt 16
drwxr-xr-x 2 thomas thomas 4096 21. Apr 19:40 .
drwxr-xr-x 3 root root 4096 21. Apr 16:34 ..
-rwxr-xr-x 1 thomas thomas 137 21. Apr 19:36 main.fcgi
-rwxr-xr-x 1 thomas thomas 168 21. Apr 19:33 main.py
- Hyperion
- Moderator
- Beiträge: 7478
- Registriert: Freitag 4. August 2006, 14:56
- Wohnort: Hamburg
- Kontaktdaten:
Ich hab auch noch was gefunden:
http://flask.pocoo.org/docs/patterns/wtforms/#the-forms
Muss nicht das EqualsTo auf das Object password verweisen?
Und weiter unten im Macro aus _formhelpers.py fehlt das </li> im Original
Imho nur Kleinigkeiten - aber wenn man's schon entdeckt, kann man es ja auch melden.
http://flask.pocoo.org/docs/patterns/wtforms/#the-forms
Muss nicht das EqualsTo auf das Object password verweisen?
Code: Alles auswählen
from wtforms import Form, BooleanField, TextField, validators
class RegistrationForm(Form):
username = TextField('Username', [validators.Length(min=4, max=25)])
email = TextField('Email Address', [validators.Length(min=6, max=35)])
password = PasswordField('New Password', [validators.Required()])
# aktuell: EqualTo('confirm', ... -> muss doch auf password zeigen?
confirm = PasswordField('Repeat Password', [validators.EqualTo(
'password', message='Passwords must match')])
accept_tos = BooleanField('I accept the TOS', [validators.Required()])
Code: Alles auswählen
{% for error in field.errors %}<li>{{ error }}</li>{% endfor %}
-
- User
- Beiträge: 1790
- Registriert: Donnerstag 28. Oktober 2004, 16:33
- Wohnort: Graz, Steiermark - Österreich
- Kontaktdaten:
Entweder das, oder man verschiebt den Validator. Das hab ich auch mal gemacht, ergibt eine besser platzierte Fehlermeldung.Hyperion hat geschrieben:Muss nicht das EqualsTo auf das Object password verweisen?
Warum? HTML4 und HTML5 erfordern hier kein schliessendes Tag, und die Dos verwenden auch ueberall HTML und keine XHTML Syntax.Hyperion hat geschrieben:Und weiter unten im Macro aus _formhelpers.py fehlt das </li> im OriginalCode: Alles auswählen
{% for error in field.errors %}<li>{{ error }}</li>{% endfor %}
@jbs: fixed
Danke fuer die Hinweise, Docs wurden angepasst. Ansonsten bitte solche Sache im IRC Channel oder Bug Tracker melden, ich schau nur sehr selten in die Foren.
TUFKAB – the user formerly known as blackbird
- Hyperion
- Moderator
- Beiträge: 7478
- Registriert: Freitag 4. August 2006, 14:56
- Wohnort: Hamburg
- Kontaktdaten:
Ok, war mir neu. Ist das schließende Tag den optional oder schlicht falsch?mitsuhiko hat geschrieben:Warum? HTML4 und HTML5 erfordern hier kein schliessendes Tag, und die Dos verwenden auch ueberall HTML und keine XHTML Syntax.Hyperion hat geschrieben:Und weiter unten im Macro aus _formhelpers.py fehlt das </li> im OriginalCode: Alles auswählen
{% for error in field.errors %}<li>{{ error }}</li>{% endfor %}
-
- User
- Beiträge: 1790
- Registriert: Donnerstag 28. Oktober 2004, 16:33
- Wohnort: Graz, Steiermark - Österreich
- Kontaktdaten:
Optional.Hyperion hat geschrieben:Ok, war mir neu. Ist das schließende Tag den optional oder schlicht falsch?
Ich seh nicht wirklich einen Sinn dahinter. Weder macht es das parsen einfacher, noch das lesen. Indentation > Schliessende Tags. In Python brauch ich auch nix zum schliessen und helf mir mit Einrueckung. Hier mal zwei Beispiele HTML zu machen, einmal mit allen optionalen Tags drin, und einmal ohne. Was ist schoener zu lesen?ahojnnes hat geschrieben:Optional und meiner Meinung nach auch gut.
Code: Alles auswählen
<form action="" method="post">
<dl>
<dt>Username:</dt>
<dd><input type="text" name="username"></dd>
<dt>Password:</dt>
<dd><input type="password" name="password"></dd>
</dl>
<p><input type="submit" value="Submit!"></p>
<ul>
<li>This is just a list</li>
<li>for demonstration purposes</li>
<li>which normally would not be here</li>
</ul>
</form>
Code: Alles auswählen
<form action="" method=post>
<dl>
<dt>Username:
<dd><input type=text name=username>
<dt>Password:
<dd><input type=password name=password>
</dl>
<p><input type=submit value="Submit!">
<ul>
<li>This is just a list
<li>for demonstration purposes
<li>which normally would not be here
</ul>
</form>
TUFKAB – the user formerly known as blackbird
- Hyperion
- Moderator
- Beiträge: 7478
- Registriert: Freitag 4. August 2006, 14:56
- Wohnort: Hamburg
- Kontaktdaten:
Dieser Aspekt iat natürlich besonders wichtigmitsuhiko hat geschrieben:... und downloaded sich auch schneller
Du hast tatsächlich recht. Liest sich wirklich besser... ich sollte mir mal ansehen, welche Tags offen bleiben dürfen und welche explizit geschlossen werden müssen.
Du wirst dich wundern, was alles gültiges HTML ist…Hyperion hat geschrieben:Du hast tatsächlich recht. Liest sich wirklich besser... ich sollte mir mal ansehen, welche Tags offen bleiben dürfen und welche explizit geschlossen werden müssen.mitsuhiko hat geschrieben:... und downloaded sich auch schneller
Andererseits kann man solches HTML nicht mehr mit XML-Parsern verarbeiten. Ob das ein Nachteil ist, muss natürlich jeder selbst entscheiden ...
-
- User
- Beiträge: 1790
- Registriert: Donnerstag 28. Oktober 2004, 16:33
- Wohnort: Graz, Steiermark - Österreich
- Kontaktdaten:
Das kann man sowieso nicht. <br/> ist kein gueltiges HTML zB.lunar hat geschrieben:Andererseits kann man solches HTML nicht mehr mit XML-Parsern verarbeiten. Ob das ein Nachteil ist, muss natürlich jeder selbst entscheiden ...
TUFKAB – the user formerly known as blackbird
@mitsuhiko: Ja und? Man kann HTML schreiben, dass auch gültiges XML ist, ebenso wie man XML schreiben kann, dass auch gültiges HTML ist.
Nein kannst du nicht. Gegenbeispiel ist gerade das eben genannte <br>. <br> für sich ist kein gültiges XML und <br /> oder <br></br> sind kein gültiges HTML.lunar hat geschrieben:@mitsuhiko: Ja und? Man kann HTML schreiben, dass auch gültiges XML ist, ebenso wie man XML schreiben kann, dass auch gültiges HTML ist.
- noisefloor
- User
- Beiträge: 3843
- Registriert: Mittwoch 17. Oktober 2007, 21:40
- Wohnort: WW
- Kontaktdaten:
Hallo,
schön ist, das flask ein "Schicht" über Werkzeug ist. Werkzeug ist zwar schön leistungsfähig, war mit für meine Schmallspurprojekte aber immer zu komplex - da kam Bottle gerade richtig
Der Unterschied Bottle vs. Flask ist IMHO die Frage: Single-File vs. Abhängigkeiten. Kann beides Vor- und Nachteile haben.
BTW, woher kommt der Name Flask?
Gruß, noisefloor
schön ist, das flask ein "Schicht" über Werkzeug ist. Werkzeug ist zwar schön leistungsfähig, war mit für meine Schmallspurprojekte aber immer zu komplex - da kam Bottle gerade richtig
Der Unterschied Bottle vs. Flask ist IMHO die Frage: Single-File vs. Abhängigkeiten. Kann beides Vor- und Nachteile haben.
BTW, woher kommt der Name Flask?
Gruß, noisefloor
- noisefloor
- User
- Beiträge: 3843
- Registriert: Mittwoch 17. Oktober 2007, 21:40
- Wohnort: WW
- Kontaktdaten:
Hallo,
@apollo13: Die Frage war rhetorisch. Der Vollständigkeit halber sei dann noch erwähnt, dass "Flask" "Gefäß" heißt.
Im Rahmen der verwendeten Programme Jinja und Werkzeug wäre natürlich ein japanischer Name wie "瓶" oder ein deutscher wie " Buddel" (<- norddeutsch) angebracht gewesen.
Zu Flask: IMHO sehr praktisch sind "before_response" und "after_respone". Zumindest, wenn man DBs im Rahmen des Projekts nutzen möchte.
Gruß, noisefloor
@apollo13: Die Frage war rhetorisch. Der Vollständigkeit halber sei dann noch erwähnt, dass "Flask" "Gefäß" heißt.
Im Rahmen der verwendeten Programme Jinja und Werkzeug wäre natürlich ein japanischer Name wie "瓶" oder ein deutscher wie " Buddel" (<- norddeutsch) angebracht gewesen.
Zu Flask: IMHO sehr praktisch sind "before_response" und "after_respone". Zumindest, wenn man DBs im Rahmen des Projekts nutzen möchte.
Gruß, noisefloor
-
- Python-Forum Veteran
- Beiträge: 16025
- Registriert: Freitag 20. Juni 2003, 16:30
- Kontaktdaten:
Das fände ich, bei einem Autor aus Österreich zutiefst beunruhigendnoisefloor hat geschrieben:ein deutscher wie " Buddel" (<- norddeutsch) angebracht gewesen.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Buddel ist ja eher Plattdeutsch als Hochdeutsch.
Aber eigentlich eine gute Idee, falls jemand noch nen Namen für ein innovatives Microframework sucht.
Man könnte ja auch überlegen, ob man nicht versucht eine einheitliche Syntax zu schaffen, und dann von Flaschen-Dialekten spricht.
Aber eigentlich eine gute Idee, falls jemand noch nen Namen für ein innovatives Microframework sucht.
Man könnte ja auch überlegen, ob man nicht versucht eine einheitliche Syntax zu schaffen, und dann von Flaschen-Dialekten spricht.
[url=http://wiki.python-forum.de/PEP%208%20%28%C3%9Cbersetzung%29]PEP 8[/url] - Quak!
[url=http://tutorial.pocoo.org/index.html]Tutorial in Deutsch[/url]
[url=http://tutorial.pocoo.org/index.html]Tutorial in Deutsch[/url]