Rails: Как проверить наличие атрибутов с полиморфизмом? (Печать в порядке, не позволяет условно)

Возвращаясь к доступу к пользовательским атрибутам (имя, электронная почта, аватар и т. Д.) Для раздела комментариев ("идентифицировать пользователя как комментатора"), почему он позволяет мне распечатывать некоторые значения, но не использовать их в условных выражениях?

Почему я могу это сделать? (Печатает аватар рядом с комментарием, как следует)

<%= image_tag comment.user.avatar.url, size: "64" %>

А не это? (Не дайте мне проверить, есть ли аватар или нет)

<% if comment.user.avatar.url.empty/blank/nil/present? %>

Поэтому, если комментатор еще не загрузил аватар, он возвращает:

undefined method \'avatar\' for nil:NilClass

Есть ли метод, который мне нужно определить в контроллере, или область в модели, или есть другой способ проверки в этой ситуации?

Спасибо.

0 ответов

Другие вопросы по тегам