Hello,
I am very new to RoR and am learning at a fairly good pace, but a
seemingly simple task is leaving me stuck. I have a DB table called
‘workers’ and fields for ‘first_name’ and ‘last_name’ need to be
combined in the ‘list’ view and shown in order of last name. The code
I have below will render the name as “Last, First”. How can I order
the table by the name column when it is a combination of 2 fields?
–thanks
Name
Email
Phone Number #1
Phone Number #2
Options
<% for worker in @workers %>
<% row_color = cycle("F8F8F8", "ffffff")%>
I’m pretty new to RoR, too. But for what it’s worth, I think you need
to look at your controller which populates your @workers collection
and add an :order expression, something like:
I’m pretty new to RoR, too. But for what it’s worth, I think you need
to look at your controller which populates your @workers collection
and add an :order expression, something like:
find(:all, order=“name”)
If nothing else, look up “order” in a Rails book.
HTH,
Richard
Right idea. You can pass an :order parameter to Model.find method that
is basically an SQL fragment for setting the order of the results.
You should be fetching these workers in your controller, so change that
line of code to something like:
Nice job. But do you know where there’s an example of this where the
app toggles between ASC and DESC when the column-name is clicked?
I got some suggestions about this a few months ago but never got it
working right. I’d like to find an “applet” on the Web or in a book
that demonstrates this.
Thanks for that GREAT article. Of course, it’s all JavaScript rather
than Ruby/Rails. But it works nicely and is designed beautifully, so
it’ll be a great education for me to translate it to RoR with minimal
JavaScript.