How to run view helpers from rails console?

100 views
Skip to first unread message

Wins Lin

unread,
May 29, 2013, 5:25:59 PM5/29/13
to rubyonra...@googlegroups.com
With
> rails console --sandbox
I cant test my models, save data to db and all will be rolled back
after.

But is it possible to test view helpers from console? I talk about these
helpers:
> post_path
> link_to
> url_for
> edit_post_path
> new_post_path

When I call them, I get an error:
irb(main):003:0> post_path(:post)
NameError: undefined local variable or method `post_path' for
main:Object

Is there a way to call those methods from Rails console? Through which
object do I need to call them?

--
Posted via http://www.ruby-forum.com/.

tamouse mailing lists

unread,
May 29, 2013, 6:33:09 PM5/29/13
to rubyonra...@googlegroups.com
Test them from tests.
> --
> You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to rubyonrails-ta...@googlegroups.com.
> To post to this group, send email to rubyonra...@googlegroups.com.
> To view this discussion on the web visit https://groups.google.com/d/msgid/rubyonrails-talk/7184cd47c4759192a252fc923e70d66e%40ruby-forum.com?hl=en-US.
> For more options, visit https://groups.google.com/groups/opt_out.
>
>

Frederick Cheung

unread,
May 30, 2013, 2:21:35 AM5/30/13
to rubyonra...@googlegroups.com
The routing helpers are all defined on Rails.application.routes.url_helpers

The other helpers are defined on the helper object

 helper.number_with_precision(1.1235)

This doesn't always work - some of the helpers rely on their being a controller/request around and these won't be able to run.

Fred

Jim Ruther Nill

unread,
May 30, 2013, 2:30:40 AM5/30/13
to rubyonra...@googlegroups.com
i think you can also use app for the url_helpers

app.posts_path for example


--
You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group.
To unsubscribe from this group and stop receiving emails from it, send an email to rubyonrails-ta...@googlegroups.com.
To post to this group, send email to rubyonra...@googlegroups.com.

For more options, visit https://groups.google.com/groups/opt_out.
 
 



--
-------------------------------------------------------------
visit my blog at http://jimlabs.heroku.com

Wins Lin

unread,
May 30, 2013, 10:31:55 AM5/30/13
to rubyonra...@googlegroups.com
Jim ruther Nill wrote in post #1110649:
> i think you can also use app for the url_helpers
>
> app.posts_path for example

Oh, yes, this works, they both work. Thank you, that's what I was
looking for.

irb(main):005:0> app.posts_path
=> "/posts"
irb(main):006:0> Rails.application.routes.url_helpers
=> #<Module:0x2d854b8>
irb(main):007:0> Rails.application.routes.url_helpers.posts_path
=> "/posts"
Reply all
Reply to author
Forward
0 new messages