icculus-fT9Px1RkUaLlKS8GlytQkw@public.gmane.org
2007-Nov-05 17:10 UTC
How To: Build shell equivalent of a rails app
Hey folks, I have an application that I have written in Rails and I am wondering about the feasability of writing an equivalent as a shell app using rails concepts. The initial app was interactive and made sense beign implemented for the web, but this new app needs to be run from the command line with its output dumped to stdout. I have played around with ActiveRecord and understand how to use it in a ruby shell app, but I am not sure how I might be able to get ActionView to work or similiar behavior to allow a controller and view to be implemented as in a rails app. Does anyone know of an example I can look at which does the above, or if not does anyone have suggestions for where I can look for answers? Thanks in advance for any help you can offer! -Andy --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
Andrew Cowan wrote:> Hey folks, I have an application that I have written in Rails and I am > wondering about the feasability of writing an equivalent as a shell > app using rails concepts. The initial app was interactive and made > sense beign implemented for the web, but this new app needs to be run > from the command line with its output dumped to stdout. > > I have played around with ActiveRecord and understand how to use it in > a ruby shell app, but I am not sure how I might be able to get > ActionView to work or similiar behavior to allow a controller and view > to be implemented as in a rails app. > > Does anyone know of an example I can look at which does the above, or > if not does anyone have suggestions for where I can look for answers?ruby script/console will drop you into an IRB session with all your models loaded. From there you can require an interactive script you''ve written. HTH, Daniel -- Posted via http://www.ruby-forum.com/. --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
Hey Andy, I''ve got a little script I call controller_instance you can have if you wish, it can be used like so: script/controller_instance RssController google_base_feed -e production This spits out the response from the google_base_feed action of the Rss controller (if that wasn''t obvious:-) I use it in several cron jobs... something like this open(rss_file, ''w'') do | f | cmd = open("|"+rootd +"script/controller_instance RssController google_base_feed -e #{ENV[''RAILS_ENV''] == ''production'' ? ''production'' : ''development''}") while string = cmd.gets f.write(string) end cmd.close end This avoids having to use a tool such as curl which in my opinion is a convoluted way to hit your own local server. I dug this up after >much< looking on google. I didn''t write it and can''t recall who did but I emailed and thanked him when I found it and he was happy to share. If you would like it please email me at tmac at easystreet dot com. Tim On Nov 5, 9:10 am, iccu...-fT9Px1RkUaLlKS8GlytQkw@public.gmane.org wrote:> Hey folks, I have an application that I have written in Rails and I am > wondering about the feasability of writing an equivalent as a shell > app using rails concepts. The initial app was interactive and made > sense beign implemented for the web, but this new app needs to be run > from the command line with its output dumped to stdout. > > I have played around with ActiveRecord and understand how to use it in > a ruby shell app, but I am not sure how I might be able to get > ActionView to work or similiar behavior to allow a controller and view > to be implemented as in a rails app. > > Does anyone know of an example I can look at which does the above, or > if not does anyone have suggestions for where I can look for answers? > > Thanks in advance for any help you can offer! > -Andy--~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
icculus-fT9Px1RkUaLlKS8GlytQkw@public.gmane.org
2007-Nov-05 19:56 UTC
Re: How To: Build shell equivalent of a rails app
Thanks guys, looks like some promising options! -Andy On Nov 5, 12:10 pm, iccu...-fT9Px1RkUaLlKS8GlytQkw@public.gmane.org wrote:> Hey folks, I have an application that I have written in Rails and I am > wondering about the feasability of writing an equivalent as a shell > app using rails concepts. The initial app was interactive and made > sense beign implemented for the web, but this new app needs to be run > from the command line with its output dumped to stdout. > > I have played around with ActiveRecord and understand how to use it in > a ruby shell app, but I am not sure how I might be able to get > ActionView to work or similiar behavior to allow a controller and view > to be implemented as in a rails app. > > Does anyone know of an example I can look at which does the above, or > if not does anyone have suggestions for where I can look for answers? > > Thanks in advance for any help you can offer! > -Andy--~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
icculus-fT9Px1RkUaLlKS8GlytQkw@public.gmane.org
2007-Nov-06 02:17 UTC
Re: How To: Build shell equivalent of a rails app
Hey again, as my luck goes I am having problems with both of the suggested routes and am wondering if you guys might have any further suggestions for what needs to be tweaked. 1. Tim, with the controller_instance script you sent me I see this problem when I try to use it with a basic rails app that I created just to test with it, has a model tied to a database table and just iterates through some of the records and displays two of the fields ( in the web app I see it working fine ). When I try this: ruby script/controller_instance MainController index -e development I see this error: undefined method `camelize'' for "top":String I googled the error and the only proposed solutions I could find were not applicable to my situation so am unsure what might be causing this. 2. Daniel, I also tried script/console and it immediately generates the following error: Loading development environment. /usr/local/lib/ruby/gems/1.8/gems/rails-1.2.3/lib/commands/console.rb: 25:in `exec'': No such file or directory - irb -r irb/completion -r script/../config/../config/environment -r console_app -r console_with_helpers --simple-prompt (Errno::ENOENT) from /usr/local/lib/ruby/gems/1.8/gems/rails-1.2.3/lib/ commands/console.rb:25 from /usr/local/lib/ruby/site_ruby/1.8/rubygems/ custom_require.rb:27:in `require'' from script/console:3 Do I have an inferior rails installation? ;) I have a gem-installed rails version 1.2.3 Anyway, wondering if any of this rings a bell, maybe there is something easy to tweak to fix it. Thanks again folks! -Andy On Nov 5, 2:56 pm, iccu...-fT9Px1RkUaLlKS8GlytQkw@public.gmane.org wrote:> Thanks guys, looks like some promising options! > > -Andy > > On Nov 5, 12:10 pm, iccu...-fT9Px1RkUaLlKS8GlytQkw@public.gmane.org wrote: > > > Hey folks, I have an application that I have written in Rails and I am > > wondering about the feasability of writing an equivalent as a shell > > app using rails concepts. The initial app was interactive and made > > sense beign implemented for the web, but this new app needs to be run > > from the command line with its output dumped to stdout. > > > I have played around with ActiveRecord and understand how to use it in > > a ruby shell app, but I am not sure how I might be able to get > > ActionView to work or similiar behavior to allow a controller and view > > to be implemented as in a rails app. > > > Does anyone know of an example I can look at which does the above, or > > if not does anyone have suggestions for where I can look for answers? > > > Thanks in advance for any help you can offer! > > -Andy--~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
Hey Andy, Sorry I didn''t notice you posted this question/issue, I just happened across it while looking for something else. I suspect you''ve already found a solution but anyway... as far as the script issue ...you could probably do something like: require ''active_support/core_ext/string/inflections'' include ActiveSupport::CoreExtensions::String::Inflections or perhaps require ''active_support/inflector'' include ActiveSupport::Inflector or something similar. Should give the script access to the camelize method. best! Tim On Nov 5, 6:17 pm, iccu...-fT9Px1RkUaLlKS8GlytQkw@public.gmane.org wrote:> Hey again, as my luck goes I am having problems with both of the > suggested routes and am wondering if > you guys might have any further suggestions for what needs to be > tweaked. > > 1. Tim, with the controller_instance script you sent me I see this > problem when I try to use it with a basic rails app that I created > just to test with it, has a model tied to adatabasetable and just > iterates through some of the records and displays two of the fields > ( in the web app I see it working fine ). > When I try this: > > ruby script/controller_instance MainControllerindex-e development > > I see this error: > > undefined method `camelize'' for "top":String > > I googled the error and the only proposed solutions I could find were > not applicable to my situation so am unsure what might be causing > this. > > 2. Daniel, I also tried script/console and it immediately generates > the following error: > > Loading development environment. > /usr/local/lib/ruby/gems/1.8/gems/rails-1.2.3/lib/commands/console.rb: > 25:in `exec'': No such file or directory - irb -r irb/completion -r > script/../config/../config/environment -r console_app -r > console_with_helpers --simple-prompt (Errno::ENOENT) > from /usr/local/lib/ruby/gems/1.8/gems/rails-1.2.3/lib/ > commands/console.rb:25 > from /usr/local/lib/ruby/site_ruby/1.8/rubygems/ > custom_require.rb:27:in `require'' > from script/console:3 > > Do I have an inferior rails installation? ;) I have a gem-installed > rails version 1.2.3 > > Anyway, wondering if any of this rings a bell, maybe there is > something easy to tweak to fix it. > > Thanks again folks! > > -Andy > > On Nov 5, 2:56 pm, iccu...-fT9Px1RkUaLlKS8GlytQkw@public.gmane.org wrote: > > > Thanks guys, looks like some promising options! > > > -Andy > > > On Nov 5, 12:10 pm, iccu...-fT9Px1RkUaLlKS8GlytQkw@public.gmane.org wrote: > > > > Hey folks, I have an application that I have written in Rails and I am > > > wondering about the feasability of writing an equivalent as a shell > > > app using rails concepts. The initial app was interactive and made > > > sense beign implemented for the web, but this new app needs to be run > > > from the command line with its output dumped to stdout. > > > > I have played around with ActiveRecord and understand how to use it in > > > a ruby shell app, but I am not sure how I might be able to get > > > ActionView to work or similiar behavior to allow a controller and view > > > to be implemented as in a rails app. > > > > Does anyone know of an example I can look at which does the above, or > > > if not does anyone have suggestions for where I can look for answers? > > > > Thanks in advance for any help you can offer! > > > -Andy--~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---