He seguido a Ryan Bates tutorial en modelos anidados. Varios de mis modelos anidados tienen fechas asociadas a ellos. En mis migraciones, en realidad son del tipo "Fecha".Modelos anidados, formularios y fecha_selección Integración de FormHelper
Algunas cosas que he tratado y los problemas que han acabado en
- date_select - puede manejar el prefijo forma de objeto, pero no modelos anidados atributos
- select_year - no funciona con la forma objeto
- una selección regular rellena con el año utilizando (Time.now.year - 100) .. (Time.now.year) y anulando el acceso del attr start_date y end_date para tomar el valor en la selección para formar un fecha y pasar eso de vuelta. funciona solo en la creación, no en la actualización
- cambiando el tipo de datos del campo a cadena y utilizando un selección regular rellena con el año usando using (Time.now.year - 100) .. (Time.now. año) obras, sino en corrige, no va a repoblar el selecto con la información actual
Cualquier idea o consejos serían útiles.
Editar: before_save parece ser más prometedor, pero por alguna razón, el valor es nulo entrada en antes de guardar, pero es visible en la log dump.
Edición 2: Curiosamente, esto sólo parece ser un problema en 'actualización', no en 'crear'.
Desafortunadamente no es así. Tienes que aplicar un poco de truco para que funcione. <% date_select ('attorney [memberships_attributes] [NEW_RECORD]', "enddate",: start_year => 2015,: end_year => 1900,: order => [: month,: day,: year],: prompt => { : día => 'Día',: mes => 'Mes',: año => 'Año'})%>. El 'abogado [memberships_attributes] [NEW_RECORD]' tiene el prefijo en la selección y luego usa el atributo correcto. Esto solo funciona si puede reemplazar 'NEW_RECORD' en el momento de crear el modelo anidado, que no es posible. – davidstites