# Find Last Errors

**URL:** <https://www.ruby-forum.com/t/find-last-errors/185010>\
**Category:** Rails\
**Created:** [March 11, 2010, 7:56pm UTC](https://www.ruby-forum.com/t/find-last-errors/185010 "2010-03-11T19:56:54Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![kampers](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/54ee81/32.png) [@kampers](https://www.ruby-forum.com/u/kampers)\
**Post date:** [March 11, 2010, 7:56pm UTC](https://www.ruby-forum.com/t/find-last-errors/185010/1 "2010-03-11T19:56:54Z")

</div>

Hi guys: This is driving me crazy. Can someone please point me in the  
right direction:

I’m trying to get the last record from my table. Every time I do this,  
it tells me there is no method, other than id.

theconditions = “criteria = '”+t+"’"  
lastrec = Capture.last(:all, :conditions =\> theconditions)

This table has a number of fields in it  
id, created\_at, tid, text

When I call lastrec.id, it works  
When I call lastrec.created\_at it gives me (undefined method  
`created\_at’ for nil:NilClass)

Any ideas? Thanks for your help!

---

<div class="post-metadata">

**Author:** ![kampers](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/54ee81/32.png) [@kampers](https://www.ruby-forum.com/u/kampers)\
**Post date:** [March 11, 2010, 8:06pm UTC](https://www.ruby-forum.com/t/find-last-errors/185010/2 "2010-03-11T20:06:41Z")

</div>

Chris K. wrote:

> Hi guys: This is driving me crazy. Can someone please point me in the  
> right direction:
> 
> When I call lastrec.id, it works  
> When I call lastrec.created\_at it gives me (undefined method  
> `created\_at’ for nil:NilClass)
> 
> Any ideas? Thanks for your help!

If you look in your database, what does this id match to?

---

<div class="post-metadata">

**Author:** ![kampers](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/54ee81/32.png) [@kampers](https://www.ruby-forum.com/u/kampers)\
**Post date:** [March 11, 2010, 8:18pm UTC](https://www.ruby-forum.com/t/find-last-errors/185010/3 "2010-03-11T20:18:55Z")

</div>

Aldric G. wrote:

> Chris K. wrote:
> 
> > Hi guys: This is driving me crazy. Can someone please point me in the  
> > right direction:
> > 
> > When I call lastrec.id, it works  
> > When I call lastrec.created\_at it gives me (undefined method  
> > `created\_at’ for nil:NilClass)
> > 
> > Any ideas? Thanks for your help!
> 
> If you look in your database, what does this id match to?

There is a record there, with that ID. I just can’t seem to call it up  
with a last command…

---

<div class="post-metadata">

**Author:** ![kampers](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/54ee81/32.png) [@kampers](https://www.ruby-forum.com/u/kampers)\
**Post date:** [March 11, 2010, 8:23pm UTC](https://www.ruby-forum.com/t/find-last-errors/185010/4 "2010-03-11T20:23:17Z")

</div>

On 11 March 2010 18:56, Chris K. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> id, created\_at, tid, text
> 
> When I call lastrec.id, it works  
> When I call lastrec.created\_at it gives me (undefined method  
> `created\_at’ for nil:NilClass)

I feel sure you must be mistaken somehow. Are you saying that if you  
immediately follow the Capture.last line with  
id = lastrec.id  
created\_at = lastrec.created\_at  
then the first line passes but you get the nil error on the second? I  
will be surprised if that is the case (I am often surprised mind you).

One thing to try is to run that code in the ruby console.  
Another is to use ruby-debug to break in after the Capture.last line  
and examine the data at that point.  
See the rails guide on debugging if you do not know about ruby-debug  
([http://guides.rubyonrails.org/](http://guides.rubyonrails.org/))

Colin

---

<div class="post-metadata">

**Author:** ![kampers](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/54ee81/32.png) [@kampers](https://www.ruby-forum.com/u/kampers)\
**Post date:** [March 11, 2010, 9:44pm UTC](https://www.ruby-forum.com/t/find-last-errors/185010/5 "2010-03-11T21:44:06Z")

</div>

On Mar 11, 2010, at 2:21 PM, Colin L. wrote:

> > 
> 
> created\_at = lastrec.created\_at  
> then the first line passes but you get the nil error on the second? I  
> will be surprised if that is the case (I am often surprised mind you).
> 
> One thing to try is to run that code in the ruby console.  
> Another is to use ruby-debug to break in after the Capture.last line  
> and examine the data at that point.  
> See the rails guide on debugging if you do not know about ruby-debug  
> ([http://guides.rubyonrails.org/](http://guides.rubyonrails.org/))
> 
> Colin

Hmm, does the id happen to be 4? 😉

try:  
irb\> puts nil.id

Last relative to what? If you mean: most recently created, try:

lastrec = Capture.first(:conditions =\> [‘criteria = ?’, t], :order =\>  
‘created\_at DESC’)

-Rob

Rob B. [http://agileconsultingllc.com](http://agileconsultingllc.com)  
removed\_email\_address@domain.invalid

---

<div class="post-metadata">

**Author:** ![kampers](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/54ee81/32.png) [@kampers](https://www.ruby-forum.com/u/kampers)\
**Post date:** [March 11, 2010, 10:16pm UTC](https://www.ruby-forum.com/t/find-last-errors/185010/6 "2010-03-11T22:16:53Z")

</div>

On 11 March 2010 20:42, Rob B. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)  
wrote:

> > > theconditions = “criteria = '”+t+“'”  
> > > immediately follow the Capture.last line with
> > 
> > Colin
> 
> Hmm, does the id happen to be 4? 😉
> 
> try:  
> irb\> puts nil.id

I suspect you may well have hit the nail on the head, but why would  
accessing nil.id in the code not generate the ‘Called id for nil’  
error? It does for me.

Colin

---

<div class="post-metadata">

**Author:** ![kampers](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/54ee81/32.png) [@kampers](https://www.ruby-forum.com/u/kampers)\
**Post date:** [March 11, 2010, 11:07pm UTC](https://www.ruby-forum.com/t/find-last-errors/185010/7 "2010-03-11T23:07:15Z")

</div>

On Mar 11, 2010, at 4:15 PM, Colin L. wrote:

> > Hmm, does the id happen to be 4? 😉
> > 
> > try:  
> > irb\> puts nil.id
> 
> I suspect you may well have hit the nail on the head, but why would  
> accessing nil.id in the code not generate the ‘Called id for nil’  
> error? It does for me.
> 
> Colin

development mode versus something else? (I think the whiny NilClass is  
only for development)

-Rob

Rob B. [http://agileconsultingllc.com](http://agileconsultingllc.com)  
removed\_email\_address@domain.invalid
