Categoría: vagorecetas
Para ti, pequeño maquetador en proyectos rails :) En un proyecto normal las vistas tienen una jerarquía y están "donde deben de estar"™. El problema viene cuando la cosa se complica y hay partials compartidos, vistas que se reciclan y empiezan las particularidades.
Toda esa información está en el log. En mi caso uso este truquito cuando me tengo que centrar en solucionar sólo problemas en vistas y necesito ir al grano. Arrancamos el server de desarrollo con:
script/server | grep Render
o directamente sobre el log:
tail -f development.log | grep Render
De esta manera la salida que nos devuelve es más o menos así:
Rendering template within layouts/application Rendering sessions/new Completed in 0.01080 (92 reqs/sec) | Rendering: 0.00938 (86%) | DB: 0.00000 (0%) | 200 OK [http://0.0.0.0/login]
Y de esta forma localizamos la vistas a la primera :)
Mamá, los 404 no me dejan ver el bosque!
De vez en cuando llega la invasión de los 404. Normalmente son imágenes que no encuentra, y que puede ser por miles de motivos. Si la cantidad de errores es abusiva podemos hacer:
tail -f development.log | grep -v 404 | grep Render
Y ya está :)
Composición:
Esta vago-receta necesita de un poquito de preparación. Debemos de instalar la gema w3c_validators. Una vez hecho eso necesitaremos copiar este cachito de código en un archivo Rakefile en la raiz de donde tengamos nuestras maquetas. Si ya tenemos un Rakefile sólo añadiremos la tarea:
# # Massive html validation task
#
# This rake task comes from the nanoc validation task (http://gist.github.com/8961)
# Copy this Rakefile to the root of your htmls or add the task to your existing Rakefile
# and run:
#
# rake validate
#
# and that's all :)
task :validate do
require 'w3c_validators'
include W3CValidators
desc "W3C validation of all the files of the current folder"
task :validate do
validate '.html'
# add validate '.theextensionofyourhtml' to extend this task
end
private
# Colorize your output :)
def colorize(text, color_code); "#{color_code}#{text}\e[0m"; end
def red(text); colorize(text, "\e[31m"); end
def green(text); colorize(text, "\e[32m"); end
# Validation calling to the w3c_validators methods
def validate ext
@validator = (ext == ".css" ? CSSValidator.new : MarkupValidator.new )
files(".", true, ext).each do |file|
results = @validator.validate_file(file)
if results.errors.length > 0
results.errors.each do |err|
puts "** #{file} => #{red(err)}"
end
else
puts "** #{file} => #{green('Valid!')}"
end
end
end
# Stoled from nanoc :) (but with a lot of love)
def files(dir, recursively, ext = '')
glob = File.join([dir] + (recursively ? [ "**", "*#{ext}" ] : [ "*#{ext}" ]))
Dir[glob].reject { |f| File.directory?(f) or f =~ /(~|\.orig|\.rej|\.bak)$/ }
end
end
La última versión y correcciones estarán siempre en este gist.
Si la extensión de los archivos a validar no es .html, no dude en variar la línea de la tarea donde se especifica la extensión o añada tantas líneas como sea necesario (esssto hay que mejorarlo)
Esta vago-receta no usa nanoc ni nada por el estilo. La podemos usar en cualquier carpeta llena de archivitos html.
Indicaciones:
Se indica su uso especialmente en todos aquellos casos en el que necesitemos validar el código y tengamos más de 3 htmls :)
Especialmente recomendable cuando más de un zángano guarrea sobre el código.
Posología:
Vaya hasta la carpeta raiz de su proyecto en un terminal y escriba rake validate tantas veces como sea deseable y usted obtendrá un ouput coloreadito super majo.
Cada validación tarda casi nada, pero cuando hay un buen puñado de htmls necesitamos un poquito de paciencia. Aunque bien mirado siempre es mejor que ir uno por uno.
Contraindicaciones y sobredosis:
Validar constantemente puede convertirte en un pequeño psicópata, úsalo con mesura ;)
Otras presentaciones:
Añadiendo en la tarea un validate ".css" conseguimos validar nuestros estilos. Funciona pero en hojas de estilo enormes saca cositas un poco raras.
-
Buscar
-
Sobre mamuso.net
mamuso.net
madrid, España
mamuso
ver perfil »
contacto »No somos nadie... y menos en bañador
(anteriormente 'haciendo el tonto un rato') -
Últimos comentarios
- Acts_as_unvlogable: un plugin para manejarlos a todos :) 9 comentarios
mamuso , blat, mamuso , [...] - Trabajar con conexión 7 comentarios
marisa, pumpkin, Gonzalo, [...] - Attachment_fu, RMagick y cintas de video 1 comentario
Alfredo Solano - Sobre escribir en un blog en castellano o hacerlo en inglés 5 comentarios
maura, mamuso, David Pardo, [...] - El día a día con nanoc 1 comentario
pumpkin - Maquetar para desarrollo 7 comentarios
pumpkin, mamuso , Pablo Impallari, [...] - Deme un garbage collector... yo sabré que hacer con él 1 comentario
danilo - Vago-receta: localizar vistas en un proyecto rails 6 comentarios
Sir Refusenik , bomberstudios, mamuso , [...] - Tocar la información 1 comentario
Guillermo - Tallercito de APIs OMF 1 comentario
Marco
- Acts_as_unvlogable: un plugin para manejarlos a todos :) 9 comentarios
-
Mis tags
-
Categorías
- ajax (1)
- blogs (5)
- código (23)
- diseño (4)
- el mundo es un pañuelo (11)
- flash (3)
- herramientas (20)
- mamuso (42)
- Ruby on Rails (62)
- tendencias (4)
- toys (2)
- vagorecetas (2)
- web (45)
-
Enlaces
-
Amigos
- Apuntes prestados
- Síndrome de ansiedad por separación
- The mixer
- Marylink
- (*_*) lau............blog
- Tentempié
- Macadamia
- El rincón de anita...
- Observando, que es gerundio...
- /dev/null
- Belingo
- Sugerencia de presentación
- Completamente fuera de lugar
- ├♦ hipersalomas garitas ♦┤sergio e. malfé.
- Insights blog
- Furilo mini
- In web we trust
- Trampantojo
- The refuseniks ha vuelto
- Pocoyó y sus amigos.
- Mamusina
- Killermuffin
- Milancico
- Blat
- White russian
- Una canción al día
- Sorprendete
- Carlival
- Lo que hay bajo las piedras
- Probando, probando
- Looking for a sign
- Dummy on rails
- Cientifico.net
- Cantorrodista
- Coctaitor
- Cóctel de yogur
- ver la coctelera de mamuso
-
Secciones

