Also my Ajax search is all messed up :-/ It doesn't sort per key any more...Only when I type the whole string ...eg: "Macbook"
On Aug 17, 1:42 pm, "Pat Allan" <[email protected]> wrote: > Looks like your sort_direction method isn't returning the right details - > should be ASC or DESC, much like SQL. Can you confirm what the generated > value for the :order option is? > > -- > Pat > > On 17/08/2012, at 7:38 PM, frankphilips wrote: > > > > > > > > > Did that, but now I'm getting this: > > > index shruffle_core: invalid sorting order 'desc_sort' > > > On Aug 17, 12:29 pm, "Pat Allan" <[email protected]> wrote: > >> Have you re-indexed Sphinxand restarted the daemon since making those > >> changes? If not, one task does it all: rake ts:rebuild > > >> Cheers > > >> -- > >> Pat > > >> On 17/08/2012, at 17:34, frankphilips <[email protected]> wrote: > > >>> Hi Pat, > > >>> I took your advice and incorporated your exact code. I've also read up > >>> on attributes and fields and have fixed accordingly. However, now I'm > >>> getting this error: > > >>> "index shruffle_core: sort-by attribute 'created_at' not found" > > >>> I do have has created_at in my model.What am I doing wrong now? Thanks > >>> for the help! > > >>> -Frank > > >>> On Thursday, August 16, 2012 7:03:56 PM UTC-5, Pat Allan wrote: > >>> Hi Frank > >>> The .order method on models is for SQL queries, not Sphinx searches, so > >>> you can't mix the two together. If you want to use sort_column and > >>> sort_direction, then pass the string you're building with the :order > >>> option (which it seems you're currently doing with :created_at): > > >>> Shruffle.search params[:search], :order => "#{sort_column} > >>> #{sort_direction}" > > >>> Also, I'd recommend reading up on the differences between attributes and > >>> fields - you probably don't want/need price, org_percent or created_at to > >>> be fields. Attributes are inherently sortable (indeed, when fields are > >>> marked as sortable, Thinking Sphinx is just creating an attribute in the > >>> background to fulfil that purpose). > >>>http://freelancing-god.github.com/ts/en/sphinx_basics.html > > >>> Hope this helps. > > >>> -- > >>> Pat > > >>> On 16/08/2012, at 3:22 PM, frankphilips wrote: > > >>>> Hi, > > >>>> I'm a noob to Rails, and I need some help. In Railscast 240, Ryan talks > >>>> about creating sortable table columns with ajax > >>>> search:http://railscasts.com/episodes/240-search-sort-paginate-with-ajax > > >>>> However when I try to combine Thinking Sphinx rather then using the > >>>> standard search Ryan mentions, it breaks my sortable table columns. I'm > >>>> sure there is a quick way to fix this. Please help! Thanks :) > > >>>> Here's my code: > > >>>> MODEL: > > >>>> define_index do > > >>>> indexes :title, sortable: true > >>>> indexes :desc, sortable: true > >>>> indexes email > >>>> indexes :org, sortable: true > >>>> indexes org_percent > >>>> indexes :price, sortable:true > >>>> indexes :city, sortable: true > >>>> indexes :created_at, sortable: true > > >>>> has created_at, updated_at > > >>>> end > > >>>> CONTROLLER: > > >>>> helper_method :sort_column, :sort_direction > >>>> def index > >>>> @shruffles = Shruffle.order(sort_column + ' ' + > >>>> sort_direction).search(params[:search], :order => :created_at, > >>>> :sort_mode => :desc) > > >>>> APPLICATION HELPER: > > >>>> def sortable(column, title = nil) > >>>> title ||= column.titleize > >>>> css_class = (column == sort_column) ? "current #{sort_direction}" : > >>>> nil > >>>> direction = (column == sort_column && sort_direction == "asc") ? > >>>> "desc" : "asc" > >>>> link_to title, {:sort => column, :direction => direction}, {:class => > >>>> css_class} > >>>> end > > >>>> VIEW: > > >>>> <%= hidden_field_tag :direction, params[:direction] %> > >>>> <%= hidden_field_tag :sort, params[:sort] %> > > >>>> <table class="pretty"> > >>>> <tr align="left"> > > >>>> <th><%= sortable "title" %></th> > >>>> <th><%= sortable "price" %></th> > >>>> <th><%= sortable "city" %></th> > >>>> <th><%= sortable "org", 'Non-Profit' %></th> > >>>> <th><%= image_tag "ico-heart.png" %> <%= sortable > >>>> "org_percent", 'Donation %' %></th> > >>>> <th><%= sortable "created_at", 'Date' %></th> > >>>> </tr> > > >>>> <% for shruffle in @shruffles %> > > >>>> <tr> > >>>> <td><%= link_to shruffle.title, shruffle %></td> > >>>> <td class="price"><%= > >>>> number_to_currency(shruffle.price) %></td> > >>>> <td><%= shruffle.city %></td> > >>>> <td><%= shruffle.org %></td> > >>>> <td><%= shruffle.org_percent %>%</td> > >>>> <td><%= shruffle.created_at.strftime("%b %d, %Y") > >>>> %></td> > >>>> </tr> > >>>> <% end %> > >>>> </table> > > >>>> -Frank > > >>>> -- > >>>> You received this message because you are subscribed to the Google > >>>> Groups "Thinking Sphinx" group. > >>>> To view this discussion on the web > >>>> visithttps://groups.google.com/d/msg/thinking-sphinx/-/Ls4y1X2qT5YJ. > >>>> 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 > >>>> athttp://groups.google.com/group/thinking-sphinx?hl=en. > > >>> -- > >>> You received this message because you are subscribed to the Google Groups > >>> "Thinking Sphinx" group. > >>> To view this discussion on the web > >>> visithttps://groups.google.com/d/msg/thinking-sphinx/-/zvniTZRgm4QJ. > >>> 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 > >>> athttp://groups.google.com/group/thinking-sphinx?hl=en. > > > -- > > You received this message because you are subscribed to the Google Groups > > "Thinking Sphinx" 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 > > athttp://groups.google.com/group/thinking-sphinx?hl=en. -- You received this message because you are subscribed to the Google Groups "Thinking Sphinx" 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/thinking-sphinx?hl=en.
