Como podrán ver, he renovado el blog. No solo esteticamente, sino que actualicé el codigo de toda la aplicación de blog :)
Tambien la vieja url para los rss feed ha cambiado. Ahora es esta la direccion , aunque la vieja la dejaré activa un tiempo.
Como podrán ver, he renovado el blog. No solo esteticamente, sino que actualicé el codigo de toda la aplicación de blog :)
Tambien la vieja url para los rss feed ha cambiado. Ahora es esta la direccion , aunque la vieja la dejaré activa un tiempo.
Finalmente hice andar nginx con uwsgi. Al principio lo hice funcionar con supervisor + uwsgi corriendo en un socket para cada sitio, pero luego de intentar (ya que no encontré documentación de cómo hacerlo) pude poner uwsgi en modo vhost para solo tener una instancia corriendo para todos los sitios.
Desde supervisor, uwsgi esta funcionando con los siguientes parametros:
[program:uwsgi_vhost] command=/usr/local/bin/uwsgi --socket 127.0.0.1:1088 --processes 3 --master --uid www-data --no-site --vhost --reload-os-env user=www-data autostart=true autorestart=true stdout_logfile=/var/log/uwsgi_main.log redirect_stderr=true stopsignal=QUIT
En nginx , un virtualhost de ejemplo (netpastiche.com.ar)
server { listen xx.xx.xxx.xx:80; server_name netpastiche.com.ar; # uwsgi for django location / { include uwsgi_params; uwsgi_param UWSGI_CHDIR /path/to/netpastiche.com.ar/public_html; uwsgi_param UWSGI_MODULE netpastiche_wsgi; uwsgi_pass 127.0.0.1:1088; } # static content location /static { root /path/to/netpastiche.com.ar/public_html; expires 24h; } }
Lo mas dificil fue hacer funcionar el sitio, ya que no estaba incluyendo en el pythonpath los paths donde estaba django instalado (netpastiche_uwsgi.py)
import os, sys sys.path.append(os.path.dirname(__file__)) sys.path.append('/usr/lib/pymodules/python2.6') sys.path.append('/usr/local/lib/python2.6/dist-packages/') os.environ['DJANGO_SETTINGS_MODULE'] = 'settings' import django.core.handlers.wsgi application = django.core.handlers.wsgi.WSGIHandler()
Dani hace un tiempo empezó un proyecto 365 en flickr, asi que le propuse hacer un site para su proyecto, trayendolas directamente de su albumde flickr.
Armé el sitio en Django, sincronizando con su album y utilizé flickrapi para hablar con flickr.
Luego de buscar varias "galerias" con jquery, elegi galleriffic, asi que el resultado final quedó todo en: www.undiaunafoto.com.ar
Espero les guste
Finalmente me decidí y quité syncr de este blog, ya que estaba dando "deprecation warning" en varios lados y no hay actualizaciones. Para acortar el camino programé mi propia app para sincronizar fotos de flickr, prontamente la podré online
Como ejercicio pasé el sitio de mindprobe a django! Puse varios discos viejos como "Live at AlternatiBa" y los mp3 de Obscure process. A disfrutar!!
Si estamos usando 'foreign keys' en una clase de Django y queremos mostrar los objetos relacionados, ya sabemos que tenemos disponible el metodo _set.
Ahora bien. Si queremos usar este metodo directamente desde un template y ademas queremos ordernarlo por un campo en particular, tendriamos que usar:
{% for album in object_list %} {% for song in album.song_set.all|dictsort:"release_date" %}
Realmente estuve bastante buscando como hacer esto, asi que espero a alguien le sea util
Este es el link para bajar los templates actualizados para django-registration v 0.8:
registration-template-0.8.tar.gz
Esta basado en los templates de devdoodles que no incluian CSRF.
Hoy estaba viendo diferentes formas de ofrecer el archivo robots.txt desde django, y la solucion mas sencilla que encontre en verdad fue hacerlo directamente desde el virtualhost de apache.
Para esto, solamente en dentro del virtualhost lo siguiente:
alias /robots.txt /{django full path}/templates/robots.txt
<Location "/robots.txt">
SetHandler None
</Location>
De esta manera hacemos que el que se encargue del robots.txt sea el webserver directamente.
me parecio una buena idea implementar aca disqus, que permite con tu usuario de twitter/openid/etc comentar en cada post. no porque haya montones de comentarios, sino mas bien (como muchas de las cosas que hice en django) para probar/aprender. fue super simple porque la documentacion de django-disqus es muy clara. bien por Arthur Koziel!