在我的应用程序中,我将有一个广告横幅,但它不会显示在每个页面上。因此,我在应用程序控制器中定义了广告横幅:
before_action :set_ad_banner
def set_ad_banner
@ad_banner = Advertising
.where('date_start_on <= ? AND date_end_on >= ?', Date.today, Date.today)
.order('RAND()')
.take
impressionist(@ad_banner)
end
我使用impressionist
gem 来查看广告显示了多少次。但是这样做,就像现在设置的那样,每次加载任何页面时都会计算展示次数,即使没有content_for
带有横幅的标签。我也尝试将代码移动到视图中,但是此代码:impressionist(@ad_banner)
在视图中不起作用。任何想法如何解决这个问题?谢谢。