Pregunta

Estoy tratando de entender la mejor opción para quitar de una forma asistente en Ruby on Rails. Idealmente me gustaría tenerlo por lo que el registro de aplicación tiene un botón al lado posterior y que permite al usuario enviar datos en los pasos.

Así que en el paso 1 se podría llenar información de contacto. Una vez que se hacen podían Haga clic en Siguiente y estar en el paso 2 para completar la información de pago, etc. Si se comete un error, puede hacer clic hacia atrás y corregirlo. serán necesarios algunos pasos, mientras que otros no, pero sí tiene que llegar al último paso para enviar los datos a la base de datos para inscribirse. A continuación, necesitan la capacidad de volver atrás y completar los pasos anteriores de la misma manera después de la finalización. (Ejemplo: tal vez si se hace clic en un enlace de perfil podían recompletar los pasos de la misma manera porque no quieren completar todos los pasos de inmediato Tal vez si se le da un botón de salto antes de completar los pasos para registrarse.? ). También necesito la validación a pasar sobre las medidas que se han completado lo que les impide pasar al siguiente paso hasta corregida o completada.

Opción 1) Me he dado cuenta de que el Ajax se ha recomendado como una opción en otras preguntas sobre stackoverflow. El único problema que tengo con él es que el usuario no sería capaz de inscribirse si se ha desactivado JavaScript. Lo ideal sería tener que ser nativo de rubí en los carriles, pero estoy dispuesto a trabajar con lo que sea necesario para conseguir que funcione.

¿Fue útil?

Solución

Hay un par de plugins que proporcionan la facilitación de la construcción Wizzard en rieles.
Hechos como Asistente y wizardly parecen los más populares.
La idea principal es:
* Crear un modelo en el primer paso
* Luego editarlo en pasos posteriores, España * Aplicar la validación parciales en cada paso y
* Tener el modelo de implementar algún tipo de máquina de estados.

Otros consejos

Usted debe ver este episodio carriles de yeso en forma de múltiples pasos:

http://railscasts.com/episodes/217-multistep-forms

Esté preparado para rebobinar y ver de nuevo. Es muy rápido!

miradas traviesas prometedor para carriles de 3:

https://github.com/schneems/wicked

Un enfoque alternativo, para las formas más simples de varios pasos en especial, es simplemente para mostrar-ocultar partes de una sola forma dependiendo del paso, de esta manera usted no golpea la base de datos en cada paso, sino más bien dejar que la acumulación de usuario hasta su objeto hasta que esté listo con una instancia válida.

Tal enfoque favorece fuertemente el uso de una clase de formulario en lugar de trabajar con el modelo directamente ( http://blog.codeclimate.com/blog/2012/10/17/7-ways-to-decompose-fat-activerecord-models/ ) y necesita ajustar mensaje de error haciendo un poco.

Pros: sólo un hit db, hay problemas con la persistencia de casos no válidos (no nulos columnas, comprobaciones de validez before_save de atributos en mal estado), no hay devolución de llamada demonios

Contras: más HTML enviado al usuario, ajustes mensaje de error, requiere una clase de forma bien construido para ser elegante y muy útil

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top