Forum: Rails-ES RegExp permanent links

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
Adce10d7f1dbabcdab8f525a59cec32f?d=identicon&s=25 Andrés Gutiérrez (andresgutgon)
on 2008-10-31 13:27
(Received via mailing list)
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
Ffd012d72e7f61639724878825ed25a3?d=identicon&s=25 Damian Janowski (djanowski)
on 2008-11-02 06:08
(Received via mailing list)
On Fri, Oct 31, 2008 at 10:27 AM, Andrés gutiérrez
<andresgutgon@gmail.com> 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 :-)

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
Adce10d7f1dbabcdab8f525a59cec32f?d=identicon&s=25 Andrés Gutiérrez (andresgutgon)
on 2008-11-03 10:14
(Received via mailing list)
Gracias, me lo miraré

Un saludo

El día 2 de noviembre de 2008 6:07, Damian Janowski
<damian.janowski@gmail.com>
escribió:> On Fri, Oct 31, 2008 at 10:27 AM, Andrés gutiérrez
This topic is locked and can not be replied to.