Rails Things

Cositas sobre Ruby on Rails

jueves, 19 de marzo de 2009

Application Templates

Me he enamorado de esta nueva facilidad que ha llegado con Rails 2.3, los Application Templates.

Los Templates son simples ficheros que cuentan con un DSL para añadir plugins/gems/initializers, así como otras muchas cosas más. Lo único que debemos hacer para aplicar a un proyecto dicho template es llamar al generador de rails con las opción -m, así como la ruta dónde se encuentra el template.


rails blog -m ~/template.rb
rails blog -m http://www.ejemplo.com/templates/supertemplate.txt


Esto nos generará un proyecto y le aplicará el template al mismo. Como podemos ver también podemos tirar de http, por lo que no es descabellado que de aquí a poco encontremos algún sitio dónde podamos ver un montón de templates hechos por usuarios. Estaría bastante bien.

En el caso que queramos aplicar un template a un proyecto ya existente nos basta con escribir:

rake rails:template LOCATION=~/template.rb



Ya existe un generador de templates online: http://www.railsboost.com

Fuente: http://m.onkey.org/2008/12/4/rails-templates

lunes, 7 de abril de 2008

OWASP y Ruby On Rails :: Web Application Security Put Into Practice

La semana pasada en la FS2008 de RedIris tomamos contacto con OWASP. Es una comunidad centrada en la seguridad de software de aplicación... entre los que se encuentra la web.

"The Open Web Application Security Project (OWASP) is a worldwide free and open community focused on improving the security of application software. Our mission is to make application security "visible," so that people and organizations can make informed decisions about application security risks. Everyone is free to participate in OWASP and all of our materials are available under an open source license. The OWASP Foundation is a 501c3 not-for-profit charitable organization that ensures the ongoing availability and support for our work."

Debido a la gran cantidad de ataques que existen actualmente, y la preocupante situación frente a las cifras de SANS Institute, pienso que tenemos que tomarnos un poco más en serio la seguridad.

Entre otras cosas, en esta guia se habla de cómo evitar algunos ataques conocidos:
  • XSS
  • CSRF
  • Insecure Direct Object Reference
  • Malicious File Execution
  • ...
La guía Web Application Security Put Into Practice: Ruby On Rails Security (68 páginas), podemos descargarnosla desde aquí.

lunes, 11 de febrero de 2008

Actualizar editor en Ubuntu


Por defecto me salía nano cuando hacía un svn commit. ¿Cómo cambiarlo?

update-alternatives --config editor

martes, 29 de enero de 2008

Roo: Rails y hojas de cálculo

http://roo.rubyforge.org/

Gema que nos permite acceder al contenido de
  • Open-office spreadsheets (.ods)
  • Excel spreadsheets (.xls) and
  • Google (online) spreadsheets
La probaré.

Staticmatic: Websites estáticos "a la Ruby"

Staticmatic es un sistema con el que podemos diseñar sitios web estáticos `a la Ruby`. A veces, por los requerimientos de nuestros clientes no necesitamos que nada sea dinámico en la web que vamos a diseñar (algo raro hoy). Para eso vale Staticmatic. No necesitamos Rails para realizar un sitio totalmente estático.

Staticmatic se suministra como una gema, por lo que la instalación es simple:
gem install staticmatic
Ahora generaremos un proyecto:
staticmatic setup mi_proyecto
created mi_proyecto/site/
created mi_proyecto/site/stylesheets
created mi_proyecto/site/images
created mi_proyecto/site/javascripts
created mi_proyecto/src/
created mi_proyecto/src/pages/
created mi_proyecto/src/layouts
created mi_proyecto/src/stylesheets
created mi_proyecto/src/partials
created mi_proyecto/src/helpers
Done

Ya podemos ver nuestro proyecto funcionando:
cd mi_proyecto
staticmatic preview .
StaticMatic Preview Server Starting...
Running Preview of . on localhost:
Ahora, si vamos al navegador a http://localhost:3000 podemos ver nuestra página funcionando. De momento vemos, más bien, poco... hemos de ir poco a poco trabajando el diseño (HTML + CSS + JS)

Para diseñar con Staticmatic hemos de hacerlo con HAML y con SASS, cosa que es una ayuda a mi entender.

¿Cúal es la estructura con la que nos encontramos?

mi_proyecto/
|-- site
| |-- images
| |-- javascripts
| `-- stylesheets
`-- src
|-- helpers
|-- layouts
| `-- application.haml
|-- pages
| `-- index.haml
|-- partials
`-- stylesheets
`-- application.sass
Si nos fijamos, la estructura tiene cierta similitud con la de un proyecto rails, salvando las distancias. Por lo que no sería difícil, una vez diseñado un sitio con Staticmatic pasarlo a una aplicación rails. Sólo necesitaríamos HAML y SASS.

Una vez que tengamos nuestro sitio terminado, lo construiremos en HTML y CSS, en vez de HAML y SASS con:

staticmatic build mi_proyecto


Enlaces relacionados:

Etiquetas