首页 > 解决方案 > 如何询问某物是否为 .present?在罗达的景色中

问题描述

我正在将 Rails 应用程序转换为 Roda。这是部分的一部分。

# _banner.erb
<% if banner.present? %>
  ...
<% end %>

这将返回错误:NoMethodError: undefined method 'present?' for []:Array

我怎样才能让 Roda 支持一些简单的事情,比如检查变量是否存在?

标签: roda

解决方案


所做的一切present?都是否定blank?,这反过来看起来像这样。您可以根据您的设置将其添加到您的助手/服务类中。

def present?
  !blank?
end

def blank?
  respond_to?(:empty?) ? !!empty? : !self
end

推荐阅读