Hi, guys
I read this book ‘Agile web development with rails’ and know this
method
present, so i have some question.
How to use this present method?
What is the usage of this method ?
Can you give me a example for explaining it?
Thanks a lot.
Hi, guys
I read this book ‘Agile web development with rails’ and know this
method
present, so i have some question.
How to use this present method?
What is the usage of this method ?
Can you give me a example for explaining it?
Thanks a lot.
Hey
First, be careful, the name of the method is actually “present?”, with
the ‘?’. There is another method called “blank?”, what this last
method does is asking if an object (or variable) is, let’s say, in a
‘black state’, that is whether it is nil, empty or an empty string and
returns true. So you would do things like:
book = “”
if book.blank?
book = writer.write_book
else
speaker.read_book(book)
end
We are asking if the book has something written on it, and if it
doesn’t, we write something on it, otherwise, just read it. As you can
see, book is “” which is an empty string, so something will be written
there.
If you go and check the source code
(present? (Object) - APIdock) of “present?”, you will
find this :
def present?
!blank?
end
From this we can say that an object will return true if it is NOT
blank. To summarize, “present?” checks if an object is nil, or empty,
or “” and returns false if the object is in fact in one of the
previous states, otherwise it returns true.
So we could rewrite the previous example as
if book.present?
speaker.read_book(book)
else
book = writer.write_book
end
Hope this helps!
This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.
Sponsor our Newsletter | Privacy Policy | Terms of Service | Remote Ruby Jobs