Where to put code snippets in Rails?
I have this code snippets that generates a signature fo开发者_JAVA百科r POSTs. The detail of it is not important, but what I want to know is: since it is not a model-related chunk of code, it really can be use anywhere: in controllers, in models, in view helpers; even in views. So I am unsure where and, even bigger of a problem, how to activate the use of it once I place it in some location.
Is it what those "require" statements are all about? That you can acquire some functionality through a "require" statement in the current file you are working on?
Just so that we have an example to talk about, say, I have a little snippet of code that does cubing:
def cube_it(num)
num**3
end
I know that I will be using it in various places across the application, so where should I put it? and when I do need to use it, how can I "summon" it?
Thank You
I would suggest putting your code inside a module named Math
in lib/math.rb
.
module Math
class << self
def cube_it(num)
num*3
end
end
end
You don't need any require statements with this (rails does it for you) and you can easily call it with Math.cube_it("Hi")
.
There are other ways of adding code to a rails application, but this is the best way.
Rails autoloads modules and classes when they are first used. You can put your function into a module (or class) and put the file into the lib directory in your application. require
statements aren't used in Rails apps often.
精彩评论