will_paginate resulting in server 500 error...

Hello there,

On my site I have a basic search form that uses find_by_ferret which
will return users within the site and render the data that matches the
search criteria

If multiple rows are returned, the rows are rendered, and then
paginated, if more that X are returned. Sounds simple, (and worked
fine in dev)

However, In Production, I get a server(500) error: (We're sorry, but
something went wrong.

We've been notified about this issue and we'll take a look at it
shortly.)

When I look in the production.log the following is returned:

ActionView::TemplateError (undefined method `will_paginate' for
#<ActionView::Base:0xb5c6dc24>) on line #26 of app/views/buddies/
_search_form.rhtml:
23:
24: Your search results are below: <br /> <br />
25:
26: <%= will_paginate @buddies %>
27: <% end %>
28: <%= render :partial=>"result_summary" %>
29: <% end %>

although I understand the error, I dont get how it worked in dev, and
not in prod...

Any ideas?

Many, many Thanks

When I look in the production.log the following is returned:

ActionView::TemplateError (undefined method `will_paginate' for
#<ActionView::Base:0xb5c6dc24>) on line #26 of app/views/buddies/
_search_form.rhtml:
23:
24: Your search results are below: <br /> <br />
25:
26: <%= will_paginate @buddies %>
27: <% end %>
28: <%= render :partial=>"result_summary" %>
29: <% end %>

although I understand the error, I dont get how it worked in dev, and
not in prod...

Sounds like you didn't install the will_paginate gem on your
production machine

Fred

I think will_paginate is installed.. should I be checking this in gem
list --remote ?

Presumably installed at root level too?

Id best take another peek...

Thanks for the response...

I think will_paginate is installed.. should I be checking this in gem
list --remote ?

--remote means it searches for gems on the gem servers - not relevant
here.

Presumably installed at root level too?

What do you mean by root?

Fred

What do you mean by root?

When i log onto my vhost, there is a root folder.

Should it be installed here, or actually where my app resides?

May be a daft question - sorry! :slight_smile:

Instead of messing around, just freeze all the gems and even rails itself in the app and upload that to your host. It’s quite obvious you are using shared hosting and you won’t have root access (or even local folder ssh access) to the server.

rake gems:unpack:dependencies

rake rails:freeze:gems

Best regards

Peter De Berdt