Method inside method in controller

18 views
Skip to first unread message

Barry

unread,
Mar 19, 2013, 8:36:04 AM3/19/13
to rubyonra...@googlegroups.com
I'm trying to follow DRY way of coding. I decided to make my code cleanes.
Basically, app has 2 types of what to show to user, depending on content. So I want to set up inside show method conditional, and then two different inner methods for conditional. And, of cource, two different views for this methods.
For exapmle:
def show
If conditional
show_empty
else
show_with_content
end
def show_empty
#some code
end
def show_with_content
#some code
end
end

And I want controller to request show_emty.html.erb and show_with_content.html.erb, based on what inner method was called.
Because my view code became really dirty and overcomplicated.
But trying to do that, I faced several errors. (nil class, wrong route).
What should I set up in routes? And how explain to Rails that it should not to seek show.html.erb, but view for inner methods?

tamouse mailing lists

unread,
Mar 20, 2013, 9:46:11 PM3/20/13
to rubyonra...@googlegroups.com
The concept is sound. However, with no details about what your code is
actually doing, real error messages, and the like, it's very hard to
offer any sort of help. Please read through the rails debugging
guide[1] to see if that will help you.


[1]: http://guides.rubyonrails.org/debugging_rails_applications.html

Colin Law

unread,
Mar 21, 2013, 4:59:12 AM3/21/13
to rubyonra...@googlegroups.com
A further suggestion, since it seems the OP is lacking some knowledge
of Rails basics such as routing, is to work right through a good
tutorial such as railstutorial.org, which is free to use online, in
order to better understand the basics.

Also for routing look a the rails guide on routing (and all the other
guides in fact).

Colin
Reply all
Reply to author
Forward
0 new messages