Buscando una opinión sobre si la gente encontraría útil esta característica:
Un tipo especial de enlaces permanentes que funcionan desde publicaciones y temas dentro de Discourse, los cuales necesitan un prefijo especial para que funcione el enrutamiento (aquí, digamos /go/). (Los registros de enlaces permanentes actuales solo funcionan para solicitudes que llegan primero a Rails [cargas de página nuevas + abrir en nueva pestaña].)
Estos enlaces permanentes serían editables por moderadores (menos daño que puedes causar cuando las URLs están acotadas).
Caso de uso: URLs fácilmente escribibles a recursos comunes de la comunidad, por ejemplo, podríamos asignar una o dos palabras clave a cada tema howto, o crear /go/install para la instalación estándar.
Encuestando el interés porque frecuentemente tengo grandes ideas que nadie quiere
Me gusta la idea de los enlaces permanentes que funcionen dentro del sitio. Si podemos encontrar un prefijo que no sea una palabra en inglés, mejor aún. Hemos estado alejándonos de eso poco a poco. /groups/g, /users/u, etc.
¿Por qué solo enlaces internos? ¿Cómo explicamos que discourse.example.org/go/there, a diferencia de cualquier otro hipervínculo en el mundo, no funciona cuando se hace clic en él fuera de esa instancia específica de Discourse?
Ah, espera, ¿te referías a por qué el enfoque en “enlaces permanentes que funcionan desde publicaciones y temas dentro de Discourse”? Porque los enlaces permanentes ya funcionan para cargas de página completa. El enrutador de Ember es lo único que impide que los foros implementen esto hoy en día con solo un tema #cómo_hacerlo.
Simplemente creo que es confuso tener dos conjuntos de “enlaces permanentes” con reglas totalmente diferentes. ¿Un conjunto funciona solo internamente y el otro solo externamente?
“Uno funciona solo externamente” es lo que tenemos hoy; yo proponía una categoría que funcione para ambos. discourse.example.org/o/there debería funcionar perfectamente al hacer clic en él desde fuera (a menos que el foro requiera inicio de sesión), y ya funciona hoy para clics externos si lo configuras.
La única razón para un prefijo especial es que funcione bien con la aplicación JS.
Aunque entiendo por qué es así, siempre he encontrado muy confuso el tema de que “los permalinks solo funcionan externamente”. Obtienes un enlace y recibes un error 404, pero si lo recargas, funciona. Parecería que Rails podría hacer esa verificación antes de rendirse.
El estado actual también significa que tienes que lidiar con los permalinks dos veces en un importador: una vez para los enlaces externos y otra para reescribir los enlaces en las publicaciones.
Actualmente, en la ruta “unknown” mostramos incondicionalmente el HTML 404. En su lugar, podemos obtener el enlace permanente correspondiente a la ruta actual y redirigir la página si se encuentra.
Creo que extender los enlaces permanentes para que funcionen internamente sería un gran proyecto. @riking, quizás una vez que termines tu trabajo actual, puedas intentarlo como tu próximo gran proyecto.