Noob question


#1

Hi *,

I am writing my first app based on the ‘depot’ application but with some
suttle differences to help me learn.

I am a bit sutck with following and would be grateful for any help:

I have the following controller:

class MainController < ApplicationController

def index
@objects = Object.certified_items
end
end

This relates to a field called ‘certified’ within a table called
objects. The certified field contains an ‘int’ of either 0 or 1 - these
will become Y/N checkboxes.

Within my model I have the following:

def self.certified_items
find(:all,
:conditions => “certified < 1”,
end
end

What I am trying to do is use certified as a boolean for yes or no. So
if something is not certified ‘0’ don’t display it - if it is cerified
‘Y’ then do display it.

Cheers,
Luke


#2

Hey luke,

Not quite sure what your question is…

You may have your greater/less than the wrong way round? Your
certified_items returns non certified items at the moment. I assume
you know theres a typo with a missing bracket and an extra comma there
too.

def certified?
self.certified==1
end

will return true or false which will be cleaner to use in your
controller if you need to test their certifiedness after extraction
from the db.

-h


#3

You also can’t use a model named Object, Rails won’t allow it. ( I
don’t know if that was just supposed to be a generic example …)

And in your model:

def self.certified_items
find(:all, :conditions => “certified = 1”,
end

But, like Henry, I’m not exactly sure what the question is…

Jeff