Question: I am getting a request from mobile app. They are sending a variable `isbookmarked` that can be either `1` or `0`. I am checking in if statement. 

```
if isbookmarked
  do something
else
  do something
end

```

The `else` part is never executed because `0` is not recognised as `false` 

How can I achieve this?

Answer: 
In Ruby everything is truthy except for `nil` and `false`. Thus both `0` and `1` are truthy - you will never reach the `else` part with this set up.

So in your case you want to check exactly for `0` or `1`:

```
if isbookmarked == 1
  do something
elsif isbookmarked == 0
  do something
end

```
A helper method like below may come in handy.

```
def truthy?(val)
  val.present? && !val.to_s.strip.in?(['false', '0'])
end

```