Kevin Yang wrote:
It comes to me that helper has some weaknesses:
1) It is hard to test . No easy way to write test code for it.
(or Just i didn't know?)
2) Not easy to reuse it on other controller/view/model.
it looks like to that putting the helper code into a model (a
fully helper model , or a mixed model) is good practice.
However i agree that some html intensive code still sites best
in helper .
1) You can test helpers, using TopFunky's plugin (see
2) Well, you don't generally want to reuse them in models - they are
View helpers, after all.
There's been some discussion about presenter patterns in models, but I
don't see a consensus appearing yet (and there's way too much fu in
those discussions for a relative amateur like me to have a view).
However, if you have a pattern which you genuinely need to have in both
the controller and the helper (the current_user is a classic example),
you can define as a provate method in the controler and then make
available to the view by calling helper :some_method in the relevant