Mein Blog...
- ↓ RawTherapee ist Open Source!
- ↓ PyLucid v0.8.7 *released*
- ↓ Download:
- ↓ Update info
- ↓ MySQL Connector in pure Python
- ↓ PyLucid v0.9 öffentliche Testseite, online.
- ↓ Thunderbird - MoreFunctionsForAddressBook
- ↓ django: UserSettings
- ↓ Links
- ↓ trac bei sourceforge
- ↓ Python Regular Expression Debugger
- ↓ Meta Daten mit Python
- ↓ PyLucid v0.9 - auf ein neues...
Inhaltsverzeichnis
↑ PyLucid v0.8.7 *released* #
Vor 11 Monate veröffentlicht, durch jens.Ich hab heute PyLucid v0.8.7 fertig gemacht.
Im "Full package" ist ein neuere Version von django enthalten, nicht nicht mehr die kürzlich entdeckte django forms Sicherheitslücke enthält!
Wer nur schnell seine Installation von dem Sicherheitsleck befeien will, braucht eigentlich nur zwei zeilen in eine Datei ändern. Nähre Informationen dazu im PyLucid Blog Artikel "django security vulnerability"
PyLucid v0.8.7 beinhaltet in der lite Version:
- TinyMCE Revision 1250
- python-creole Revision 39
...und im "Full package":
- django trunk Revision 11624
- pygments
↑ Download: #
↑ Update info #
Wer seine installation Updaten möchte, muß in der settings.py eine kleine Änderung vornehmen, siehe:
http://www.pylucid.org/_goto/108/update-PyLucid/#update-to-v0-8-7
(Last update: 20. Nov. 2009, 11:01 by jens.)
↑ MySQL Connector in pure Python #
Vor 11 Monate, 1 Woche veröffentlicht, durch jens.Ein neues Projekt möchte eine pure Python Schnittstelle zu MySQL implementieren. Mal sehen ob wir dann eine Alternative zu MySQLdb erhalten.
Zitat von der Projekt Seite:
MySQL Connector/Python is implementing the MySQL Client/Server protocol completely in Python. This means you don't have to compile anything or MySQL doesn't even have to be installed on the machine. Work is on its way to also include an optional installation which compiles against the MySQL C client libraries.
(Last update: 20. Nov. 2009, 11:01 by jens.)
↑ PyLucid v0.9 öffentliche Testseite, online. #
Vor 1 Jahr, 1 Monat veröffentlicht, durch jens.Es gibt eine öffentliche Testseite, der aktuellen alpha version von PyLucid v0.9:
Ihr könnt es selber ausprobieren. Einfach einloggen als superuser:
- Username: test
- Password: 12345678
Einfach einloggen und ein wenig spielen. Wir resetten die Seite hin und wieder.
Hinweis: Die Seite läuft erstmal nur mit CGI und komplett ohne Caching. Die Perfomance ist somit schlecht.
Feedback willkommen, siehe: Kontakt Seite (en).
Wer selber eine eigene Test Umgebung bauen möchte, sollte sich die Seiten ansehen:
- v0.9 testing (en)
- test v0.9 with CGI (en)
(Last update: 20. Nov. 2009, 11:01 by jens.)
↑ Thunderbird - MoreFunctionsForAddressBook #
Vor 1 Jahr, 1 Monat veröffentlicht, durch jens.MoreFunctionsForAddressBook ist eine nette Erweiterung für das Adressbuch von Thunderbird. Damit kann man u.a. vCard (.vcf Dateien) einlesen.
(Last update: 20. Nov. 2009, 11:01 by jens.)
↑ django: UserSettings #
Vor 1 Jahr, 2 Monate veröffentlicht, durch jens.In Django kann man mit UserProfiles für jeden User Daten speichern.
Für PyLucid brauche ich da aber was flexibleres. Jeder Plugin soll auf einfacher weise User spezifische Einstellungen speichern können.
Im meinem Projekt django-dbpreferences existierte bisher die Möglichkeit Einstellungen anhand von ein oder mehreren Forms zu speichern. Das ist schon recht flexibel und bequem, weil man im Prinzip nur eine Form definieren muß und fertig. Allerdings werden die Werte nicht mit dem User verknüpft. Somit eignet es sich nur für Projekt übergreifende Einstellungen, die man nicht in der settings definieren muß.
Die neue Komponente, "UserSettings" genannt, arbeitet ohne forms. Somit muß eine andere Instanz für die Validierung sorgen. Im Grunde ist es auch recht einfach gestrickt: Es wird einfach ein dict serialisiert pro User gespeichern und fertig.
Gedacht ist das für alle Einstellungen, die pro User vorgenommen werden können. Ein Beispiel: Beim schreiben eines neuen Blog Artikels kann man im PyLucid Plugin Markups auswählen. Jeder User sollte also sein bevorzugtes Markup voreingestellt haben. Also warum nicht einfach das letzte Benutze Markup für jeden User speichern?
Mit UserSettings geht das super einfach, ungefähr so:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | def create_blog_article(request): """ Use a user settings in a form as initial value. If the value was set in the past, this value would be used as initial value. So, the form has allways the last used user value ;) """ if request.method == 'POST': form = BlogArticleForm(request.POST) if form.is_valid(): # ... # Speicher das wirklich genutzte Markup, für später: request.user_settings["markup"] = form.cleaned_data["markup"] # ... return HttpResponseRedirect('/saved/') else: # Nutzte das zuletzt genutzte Markup. Wenn es kein's gibt, dann wird "creole" genommen form = BlogArticleForm(initial={"markup": request.user_settings.get("markup", "creole"}) return render_to_response('create_blog_article.html', {'form': form}) |
Um UserSettings zu benutzten, muß man im Prinzip nur eine Middelware einbinden:
1 2 3 4 5 6 | MIDDLEWARE_CLASSES = ( 'django.contrib.sessions.middleware.SessionMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', #... 'dbpreferences.middleware.DBPreferencesMiddleware', ) |
Die DBPreferencesMiddleware packt am Anfang bei process_request() das Objekt "user_settings" an's request Objekt. Am Ende in process_response() werden geänderte Daten automatisch gespeichert.
Damit das ganze schön schnell ist, wird ein einfaches, aber effektives Caching verwendet.
↑ Links #
- Projekt Webseite: http://code.google.com/p/django-dbpreferences/
- Beispiel: http://code.google.com/p/django-dbpreferences/wiki/UserSettings_example
- PyPi Eintrag: http://pypi.python.org/pypi/django-dbpreferences/
(Last update: 20. Nov. 2009, 11:01 by jens.)
↑ trac bei sourceforge #
Vor 1 Jahr, 3 Monate veröffentlicht, durch jens.Nett, bei sourceforge gibt es neuerdings die sog. Hosted Apps. Das sind u.a. Trac und phpBB.
Leider kann man aber die Daten eines bestehenden phpBB nicht importieren, siehe: http://apps.sourceforge.net/ideatorrent/sourceforge/ideatorrent/idea/7/
Somit bleibt das phpBB für PyLucid erstmal so wie es ist.
(Last update: 20. Nov. 2009, 11:01 by jens.)
↑ Python Regular Expression Debugger #
Vor 1 Jahr, 4 Monate veröffentlicht, durch jens.Nettes Programm gefunden um Python Regular Expression zu debuggen:
Sieht unter GNOME zwar nicht so ganz schick aus, aber es geht ja auch um die Funktion ;)
(Last update: 20. Nov. 2009, 11:01 by jens.)
↑ Meta Daten mit Python #
Vor 1 Jahr, 4 Monate veröffentlicht, durch jens.Wenn man mal wieder mit Python an Metadaten aus Binären Dateien kommen will, sollte man mal einen Blick auf Hachoir werfen:
(Last update: 20. Nov. 2009, 11:01 by jens.)
↑ PyLucid v0.9 - auf ein neues... #
Vor 1 Jahr, 5 Monate veröffentlicht, durch jens.Mit PyLucid v0.9 wollen wir von Null anfangen, mal wieder ;)
PyLucid soll i18n auch bei den CMS Inhalten bekommen. Das bisherige Datenbankmodell passt dafür natürlich nicht.
Der Plan für v0.9 soll auch sein, noch näher an django herran zu rücken. u.a. Aufsplittung in mehrere kleinere Apps. Das Plugin System wird wohl auch anders ablaufen...
Es wäre jetzt also ein guter Zeitpunkt mit zu machen. Wir möchten gern unser Team vergrößern und brauch immer Hilfe...
Wer Lust hat, bitte melden:
- im Forum: http://www.pylucid.org/phpBB2/
- im IRC: #pylucid auf freenode.net
- Jabber: pylucid@conference.jabber.org (besser IRC ;) )
- http://groups.google.com/group/PyLucid-general (recht verstaubt)
(Last update: 20. Nov. 2009, 11:01 by jens.)