Hi you all, I am trying to put some statements out to console in my Rails app, for debugging purposes, especially in the model classes. However, they do not work at all. I am trying with p, puts, print, but nothing. I just get it working when this statements are in a controller, but not in model classes. I''ve also tried with Rails.logger.debug("whatever") but nothing, this also works only in the controller. What can I do? :( I''m working with Jruby 1.1.6 and Rails 2.1.2 in a Webrick server. -- Posted via http://www.ruby-forum.com/.
Well, there are a few different ways to debug your app. What are you trying to find out? In the model you can put: class ModelName < ActiveRecord::Base puts caller .. .. end That will give you the call stack everytime the model is hit. If you want to debug params within your views you can place: <%= debug params %> Which will list all of the params in your views... The list goes on and on.. What do you need to check? -- Posted via http://www.ruby-forum.com/.
It is just I want to see objects attributes I have from my model classes in the output, this is why I do the "puts" or "p", but it does not work. For example, I have a SearchEngine class, I have a def search() function that returs some results, and I want to see these results before sending them to the controller... Älphä Blüë wrote:> Well, there are a few different ways to debug your app. What are you > trying to find out? > > In the model you can put: > > class ModelName < ActiveRecord::Base > puts caller > > .. > .. > end > > That will give you the call stack everytime the model is hit. > > If you want to debug params within your views you can place: > > <%= debug params %> > > Which will list all of the params in your views... > > The list goes on and on.. > > What do you need to check?-- Posted via http://www.ruby-forum.com/.
You should debug through test parameters. Here''s a site link to help: http://www.thechrisoshow.com/2008/5/4/five-tips-for-testing-rails -- Posted via http://www.ruby-forum.com/.
Ok, I will take a look to these ways for debug. However, I still don''t understand why my "puts" don''t work. My non-Active record models are not in the app/model directory, but in an app/engine directory (is someone else work), can be this the problem? Or can be something related with jruby? Älphä Blüë wrote:> You should debug through test parameters. Here''s a site link to help: > > http://www.thechrisoshow.com/2008/5/4/five-tips-for-testing-rails-- Posted via http://www.ruby-forum.com/.
On Jul 10, 5:33 am, Damaris Fuentes <rails-mailing-l...-ARtvInVfO7ksV2N9l4h3zg@public.gmane.org> wrote:> Ok, I will take a look to these ways for debug. > However, I still don''t understand why my "puts" don''t work. > My non-Active record models are not in the app/model directory, but in > an app/engine directory (is someone else work), can be this the problem?Where are you looking for the output of the controller puts? Assuming that you are running your Rails test server using script/server then that information is displayed on the server console.
On the server console. I run the server by means of "jruby script/server", in development mode. At the server console just appears the information of the HTTP requests. James Byrne wrote:> On Jul 10, 5:33�am, Damaris Fuentes <rails-mailing-l...@andreas-s.net> > wrote: >> Ok, I will take a look to these ways for debug. >> However, I still don''t understand why my "puts" don''t work. >> My non-Active record models are not in the app/model directory, but in >> an app/engine directory (is someone else work), can be this the problem? > > Where are you looking for the output of the controller puts? Assuming > that you are running your Rails test server using script/server then > that information is displayed on the server console.-- Posted via http://www.ruby-forum.com/.
Taking a look through Google I found that some people have the same problem, but most of them because they have changed from Webrick to Mongrel. Apparently, console with mongrel does not show the "puts" messages. However, I am working with webrick. Damaris Fuentes wrote:> On the server console. > I run the server by means of "jruby script/server", in development mode. > At the server console just appears the information of the HTTP requests. > > James Byrne wrote: >> On Jul 10, 5:33�am, Damaris Fuentes <rails-mailing-l...@andreas-s.net> >> wrote: >>> Ok, I will take a look to these ways for debug. >>> However, I still don''t understand why my "puts" don''t work. >>> My non-Active record models are not in the app/model directory, but in >>> an app/engine directory (is someone else work), can be this the problem? >> >> Where are you looking for the output of the controller puts? Assuming >> that you are running your Rails test server using script/server then >> that information is displayed on the server console.-- Posted via http://www.ruby-forum.com/.
Damaris Fuentes wrote:> Taking a look through Google I found that some people have the same > problem, but most of them because they have changed from Webrick to > Mongrel. Apparently, console with mongrel does not show the "puts" > messages. However, I am working with webrick.I''m getting the same issue, and I''m using lightppd. Way back I had some simple output to console type of thing, and I''m sure at the time I used print. That would have been on webrick back then. I''m going to follow this thread as I''d like to know what the trick is. I fI find out before you, I''ll post back. -- Posted via http://www.ruby-forum.com/.