RegExp permanent links


#1

Hola hace un tiempo se hablo en la lista de una manera de crear links
permanentes creando un campo extra en la BBDD para almacenarlo. Para
crear este campo lo que se hacia era coger otro campo (title p.ej.) y
se le pasaba un RegExp que lo dejaba listo para que no diese problemas
a la hora de unirlo a la URL

Si por ejemplo mi campo title es: El caballo blanco de
Santiagón(NOTA: lo de santiagón es por meter un acento)
Y lo que me suelta la REgExp es algo asi: el-caballo-blanco-de-santiagon

Alguien me podría mostrar un RegExp que pueda hacer esto y que sea fiable.

Gracias


#2

On Fri, Oct 31, 2008 at 10:27 AM, Andrés gutiérrez
removed_email_address@domain.invalid wrote:

Hola hace un tiempo se hablo en la lista de una manera de crear links
permanentes creando un campo extra en la BBDD para almacenarlo. Para
crear este campo lo que se hacia era coger otro campo (title p.ej.) y
se le pasaba un RegExp que lo dejaba listo para que no diese problemas
a la hora de unirlo a la URL

Si por ejemplo mi campo title es: El caballo blanco de Santiagón
(NOTA: lo de santiagón es por meter un acento)
Y lo que me suelta la REgExp es algo asi: el-caballo-blanco-de-santiagon

Alguien me podría mostrar un RegExp que pueda hacer esto y que sea fiable.

Quizás te interese my fork de permalink_fu [1]. Las diferencias con el
permalink_fu original [2] son:

  • Mejor conversión de caracteres (utilizando ActiveSupport y Iconv si
    es necesario – parte del crédito para henrik en GitHub).

  • Si eres un buen niño e implementas #to_s en tus modelos, puedes
    declarar directamente has_permalink. Ej:
    class Post
    has_permalink

    def to_s
    title
    end
    end

  • Por default se sobreescribe el método #to_param, que genera una URL
    del tipo “#{id}-#{permalink}” (24-el-caballo-blanco-de-santiagon).
    Esto permite agregar permalinks muy fácilmente ya que tus
    controladores no necesitan modificaciones (además de que en general
    utilizar el ID en el título es una buena práctica – puedes cambiar el
    permalink sin que se rompan los links, no necesitas un índice gigante
    adicional, no necesitas que los permalinks sean únicos, etc.)

  • Provee una tarea de Rake para generar permalinks. Sirve por si
    agregas permalinks luego de que tu sitio ya está funcionando, o bien
    si cambias el algoritmo y necesitas re-generarlos (rake
    permalinks:rebuild).

En fin, es un permalink_fu pero como todos lo terminamos usando :slight_smile:

Espero que sirva. Si no, puedes copiarte el código que genera la
cadena sana y listo.

Saludos!

[1] http://github.com/djanowski/permalink_fu
[2] http://github.com/technoweenie/permalink_fu


#3

Gracias, me lo miraré

Un saludo

El día 2 de noviembre de 2008 6:07, Damian J.
removed_email_address@domain.invalid
escribió:> On Fri, Oct 31, 2008 at 10:27 AM, Andrés gutiérrez