Как мне написать условие if в представлении с помощью Slim? Я хотел бы показать контент, если current_user является подписчиком. У меня есть таблица подписок со столбцами user_id
и cancelled
. Пользователь имеет доступ к веб-сайту, если его идентификатор можно найти в таблице подписок под user_id
, а столбец cancelled
равен NULL
. Если cancelled
имеет значение 1
, то у пользователя больше нет доступа.
Как показать контент, если current_user соответствует требованиям
Ответы (1)
Если у вас настроены отношения, что-то вроде этого в качестве метода экземпляра в пользовательской модели должно работать.
def subscribed?
subscriptions.where(cancelled: nil).exists?
end
Затем в представлении вы можете сделать что-то вроде:
<% if user.subscribed? %>
Here ya go
<% else %>
Go away
<% end %>
Очевидно, вы могли бы просто поместить логику в подписку? метод в представлении, но, возможно, это немного чище.
person
Brad Werth
schedule
13.07.2014