Pregunta

Oh así que por favor tengan paciencia conmigo ... tengo un modelo para las reservas y un modelo para los conductores. Un conductor tiene muchas reservas y una reserva pertenece a un conductor.

Al agregar o editar una reserva, quiero que el usuario sea capaz de escribir el nombre de usuario del controlador. Los nombres de usuario son únicos y más fácil para el usuario final que proporcionar a cada conductor de un número.

Ahora bien, esta es la forma en que lo he hecho:

def create
  if params[:booking][:driver].empty? 
    params[:booking][:driver] = nil 
  else
    @driver = Driver.find(:first, :conditions => { :username => params[:booking][:driver] })
    params[:booking][:driver] = @driver
  end

Este código funciona bien para la presentación, pero cuando se carga el formulario, se muestra la referencia del objeto (por ejemplo. #) Y lo necesito para mostrar el nombre de usuario. ¿Cómo puedo cambiar <% = f.text_field: controlador%>? En el form_for en la vista de edición para tomar el valor del nombre de usuario conductores

¿Voy esto de la manera correcta, o hay un fácil muerto, los carriles manera de hacer lo que necesito?

¿Fue útil?

Solución

"pero cuando se carga el formulario" Qué quiere decir cuando no puede crear o cuando se está editando? Se puede publicar publicar su actualización completa y crear acciones por favor.

params [: reserva] [: controlador] = @ driver.username debe llenar su parámetro con una cadena en lugar de un objeto, aunque no estoy seguro de que esto es realmente lo que quiere hacer. En lugar de dejarlo a cero si su blanco, basta con dejarlo en blanco, nulo es un objeto que quizá la razón por la que está viendo '#'

Lo que está haciendo aquí no me parece bien, es probable que tenga más sentido que sólo se adhieren con el cuadro de selección de los conductores de todos modos, en el que el campo es el driver_id. Si realmente desea utilizar un cuadro de texto a continuación, te ayudaré a cabo? Justo después de su código en primer lugar.

Ha visto esto? Que le ayudará a guiar un poco más:

http://railscasts.com/episodes/57-create -a través de texto campo -model

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