[Ror-es] Seleccionar varios registros con un select multiple?
Sebastian Delmont
sd at notso.net
Fri Sep 22 14:40:09 GMT 2006
Por si acaso no queda claro, el detalle mas importante del ejemplo es
que el nombre del select debe ser "categories[]", con el "[" y "]" al
final. Al nombrarlo de esa manera, Rails convierte automaticamente
los parametros que reciba en un arreglo de valores. Si no usas un
nombre con ese formato, entonces Rails toma uno solo de los valores
recibidos (no recuerdo si el primero o el ultimo).
On Sep 22, 2006, at 10:37 AM, David Verdú wrote:
>
> En la vista, tienes que poner dentro del formulario:
>
>
> <select id="video_categories" name="categories[]" size="10"
> multiple="multiple">
> <%= options_from_collection_for_select @categories,
> "id","name",@ video.categories.collect {|c| c.id } %>
> </select>
>
> y en el controlador el siguiente código para la creación y la
> edición. recuerda que las action
> de los formularios son 'new' y 'edit' respectivamente en vez de
> 'create' y 'update'
>
> #continues with video creation
> def new
> @video = Video.create(params[:video])
> @categories = Category.find(:all, :order => "name")
> if request.post? and @video.save
> video.categories = params[:categories] ? Category.find
> (params[:categories]) : []
> flash[:notice] = 'Video was successfully created'.t
> redirect_to :action => 'show', :id => @video
> end
> end
>
> #continues with video creation
> def edit
> @video = Video.find(params[:id])
> @video.attributes = params[:video]
> @categories = Category.find(:all, :order => "name")
> if request.post ? and @video.save
> video.categories = params[:categories] ? Category.find
> (params[:categories]) : []
> flash[:notice] = 'Video was successfully created'.t
> redirect_to :action => 'show', :id => @video
> end
> end
>
> Espero que te sea útil
> Tunoheavy
>
> _______________________________________________
> Ror-es mailing list
> Ror-es at lists.simplelogica.net
> http://lists.simplelogica.net/mailman/listinfo/ror-es
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.simplelogica.net/pipermail/ror-es/attachments/20060922/2f3ad1c1/attachment.htm
More information about the Ror-es
mailing list