> On 16 Oct 2008, at 22:44, Neal L <[EMAIL PROTECTED]> wrote:
>
> >
> > That sort of worked, it returned an array of true, false values
> > corresponding to !c.selected. That did help me figure out the
> > solution though. Here's what worked:
> >
> > @account.clients.map{ |c| !c.can_edit(@unit) ? c : nil }.compact
> >
>
> Sounds like you're looking for the reject function.
Ach, right--or select maybe:
@account.clients.select{|c| c.can_edit(@unit)}
Sorry for the bum steer.
> > I didn't have a selected property, but I did have a can_edit(unit)
> > method that returns true or false. Clients that can_edit the @unit
> > are already on the list...
> >
> > Only thing is, this runs a separate database query for each client for
> > the can_edit(@unit) call. Is there any way to do this in one query?
> >
> That depends entirely on what's in your can_edit function.
If your controller is doing an Account.find() to populate your @account var,
you may be able to avoid the extra queries by throwing a :include => 'clients'
on there...
> Fred
> > Thanks!
>
> On Oct 16, 4:13 pm, "Pardee, Roy" <[EMAIL PROTECTED]> wrote:
>> Do clients have a .selected property or some such that you can use to
>> figure out which clients are already selected? If so you could do,
>> e.g.,
>>
>> @account.clients.map{|c| !c.selected}
>>
>> I would think.
>>
>> -----Original Message-----
>> From: [email protected]
>> [mailto:[email protected]
>> ] On Behalf Of Neal L
>> Sent: Thursday, October 16, 2008 2:10 PM
>> To: Ruby on Rails: Talk
>> Subject: [Rails] Removing values from a select (drop-down) box
>>
>> Hello,
>>
>> I am working on a project, and on one form we have a select (drop-
>> down) box where the user needs to be able to select from a list of
>> clients. The box is currently being populated with:
>>
>> <%= collection_select(:client, :id, @account.clients, :id, :name) %>
>>
>> The problem is that some of these clients may have already been
>> selected, and we need to remove them from the list. Is this
>> possible?
>>
>> Thanks!
> >
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "Ruby
on Rails: Talk" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at
http://groups.google.com/group/rubyonrails-talk?hl=en
-~----------~----~----~----~------~----~------~--~---