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

```
You can use this gem called [wannabe\_bool](https://github.com/prodis/wannabe_bool), you will get a `to_b` method which can convert almost everything to boolean, you can check the gem documentation for all the options available.

```
if isbookmarked.to_b
  do something
else
  do something
end

```

I have tried few of the things on console that might help you

```
2.0.0-p451 :002 > "1".to_b
 => true 
2.0.0-p451 :003 > "0".to_b
 => false 
2.0.0-p451 :004 > 1.to_b
 => true 
2.0.0-p451 :005 > 0.to_b
 => false

```

<https://github.com/prodis/wannabe_bool>

Hope that helps!