Running model methods from command line

hi chaps - i’ve got a project where I have very limited resources on the
device rails runs on (raspberry pi) - basically i have rails server
running… then periodically i fire off rails runner Model.method (from
an external program on the device)…. all works fine but it’s terribly
slow - I think it’s because every time runner fires it’s starting up a
whole new rails environment - is that assumption correct ?

After that - what’s a better way ?

I mean I could use delayed job right ? but I don’t see how that would
help as the environment would still have to be loaded each time - that
right ?

Try create just a ruby script and include ‘rubygems’ and
‘active_record’:

|#!/path/to/ruby

||require’rubygems’|
|require’active_record’|

You must include all the models you need also.

Then give execute permission to your script:

|chmod a+x myscript.rb|


Nielson R.
[email protected]

On Jul 1, 2012, at 5:37 AM, Nielson R. wrote:

Try create just a ruby script and include ‘rubygems’ and ‘active_record’:

You might also want (for the connection follow what’s in your
database.yml):

ActiveRecord::Base.establish_connection({
adapter: …
})

And you might want to require logger, and:

ActiveRecord::Base.logger = Logger.new(STDOUT)


Scott R.
[email protected]
http://www.elevated-dev.com/
(303) 722-0567 voice