Tôi nghĩ đó là ý nghĩa chỉ chung và ước Ruby để làm điều này nhưng tôi có phương pháp này:Phương pháp có nên kết thúc bằng không? (dấu chấm hỏi) chỉ trả về một boolean?
def is_subscribed?(feed_url)
Subscription.find_by_user_id_and_feed_id(self[ :id ], Feed.find_by_feed_url(feed_url))
end
Sự rắc rối duy nhất tôi nhận được, điều này không trở boolean như tôi dự đoán ban đầu bằng cách đặt câu hỏi đánh dấu vào cuối tên phương thức. Tôi đã có ấn tượng rằng khi đánh giá một đối tượng như điều kiện, nó trả về true
nếu không phải là nil
.
Dường như tôi đang thiếu điểm ở đây và nó không đánh giá nó như tôi nghĩ.
Vì vậy, câu hỏi của tôi là, tốt nhất là chỉ cần thực hiện một số if (condition) true else false
? Hoặc là có một phương pháp thanh lịch hơn để làm điều này?
tuyệt vời chỉ là những gì tôi đang tìm kiếm. –
Là một sang một bên, có lẽ phương pháp nên được đặt tên là "đã đăng ký?". "?" đã truyền đạt ý nghĩa của "là". – Salil
"một giá trị có thể được đánh giá là đúng hoặc sai", nhưng bất kỳ và mọi giá trị trong Ruby không đánh giá 'true' hoặc' false' ... –