10.08.10
Posted in Diario de guerra at 10:53 am by mawi
Haciendo una query tal que así en navicat me encontre con un error de lo mas irritante
select j.nombre,j.apellidos,u.name from datos_usuario j join usuarios s u on u.name=concat(j.nombre,” ” ,j.apellidos)
Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (latin1_spanish_ci,IMPLICIT) for operation ‘=’
Parece que al concatenar con el espacio vacío se cambia el encoding o yo que se que paja mental de mysql. Solucion: forzar el encoding del espacio
select j.nombre,j.apellidos,u.name from datos_usuario j join usuarios s u on u.name=concat(j.nombre,” ” COLLATE utf8_general_ci ,j.apellidos)
Migra que te migra!
Permalink
09.21.10
Posted in Diario de guerra at 11:58 am by mawi
Me acabo de encontrar que un webmaster gracioso le dio por añadir tildes en las urls de una web que ando scrapeando y son del rollo http://dominio/index.php?cadena=COPÓN. Al hacer un
Nokogiri::HTML(open(url))
me salta un pedazo de invalid url.
Solucion:
Googleando me encontre en http://stackoverflow.com/questions/522715/removing-accents-diacritics-from-string-while-preserving-other-special-chars-tri y di con la solución
url.mb_chars.normalize(:kd).gsub(/[^\x00-\x7F]/n, ”).to_s
Que te pilla todos los caracteres y sustituye por su version “buena”. No entiendo mucho de expresiones regulares, pero funciona y tiene style
Permalink
09.20.10
Posted in Diario de guerra at 10:08 am by mawi
Como no me quedé muy agusto con lo del caché, empiezo por esto ^^
Exception Notification (http://github.com/rails/exception_notification) es una gema que te manda al correo los errores que de la aplicación. Muy útil a la vez que puñetera. La rama master esta preparada para rails 3 así que podía instalarlo con el metodo normal. Rebuscando por la ayuda me encontre el modo de instalar un rama especifica como plugin, en este caso:
./script/plugin install http://github.com/rails/exception_notification.git -r 2-3-stable
Lo siguiente es seguir la documentación y añadir al application_controller.rb
class ApplicationController < ActionController::Base
include ExceptionNotification::Notifiable
…
end
Y en el enviroment.rb
ExceptionNotification::Notifier.exception_recipients = %w(joe@schmoe.com bill@schmoe.com)
Done! Ya tenemos el plugin puteandonos avisandonos cada vez que pasa algo
Happy coding!
Permalink
09.15.10
Posted in Diario de guerra at 11:33 pm by mawi
Ale, pues me decidí a darle una continuidad a esto con algo que hago todos los días, enfrentarme a marrones
. Invariablemente aparecen problemas, cosas que nunca viste, fantasmas, … y hay que lidiar con ello. Pues de eso se trata, dar notas de como se solucionó un problema determinado. Sin pretensiones de ser algo muy técnico y extenso. Solo problema+causa+solución. Y por supuesto, en Rails
Mañana… cachear una determinada zona de una página (a ver si lo dejo fino ya)
Permalink