I’m trying to access methods like request.request_uri and request.domain
outside of the normal application and view code. How might one access
these with code in /lib?
On Nov 30, 2007, at 9:04 PM, Tim Michaud wrote:
I’m trying to access methods like request.request_uri and
request.domain
outside of the normal application and view code. How might one access
these with code in /lib?
pass those from your controller into the methods you’re calling.
#------------------
/controllers/whatever_controller.rb
class WhateverController < ActionController::Base
@some_var = LibThing.new
@some_var.some_lib_method(self.request.subdomains)
end
#------------------
/lib/lib_thing.rb
class LibThing
def some_lib_method(subdomains)
# does stuf with request.subdomains here
end
end
–
def gw
acts_as_n00b
writes_at(www.railsdev.ws)
end
Greg W. wrote:
pass those from your controller into the methods you’re calling.
Hey Greg, thanks for the idea. I have tried this and it works well, but
I’ve run into two problems.
-
I need to call this method about 5-20 times per request, so I’d like
to be able to abstract the value out and not have to pass the same value
for each call. (The method does take 2 other parameters, so each call is
different). -
But the bigger issue is that I’m finding that i need to call the
“some_lib_method” in “/lib/lib_thing.rb” from other code in /lib - like
in “/lib/other_lib_thing.rb”.
So what I’m wondering is, is there a way to include or require
ActionController::AbstractRequest or something similar in
“/lib/lib_thing.rb” so that its methods have direct access to
request.request_uri and the like?