无法理解如何使用links_to过滤rails视图中同一控制器中的内容。我的代码如下:
#index.html.erb(链接导航区域)
<nav>
<%= link_to 'Daily Monitoring', root_path(:category => "dailymonitoring") %>
<%= link_to 'Smoke Tests', root_path(:category => "smoketests") %>
</nav>
#index.html.erb(续)
<ul id="results">
<% if @reportlinks == "dailymonitoring" %>
# dailymonitoring content
<% elsif @reportlinks == "smoketests" %>
# smoketests content
<% end %> <!-- end conditional -->
</ul>
#reports_controller.rb
if params[:category]
@reportlinks = Report.where(:category => params[:category])
else
@reportlinks = Report.all
end
#model(report.rb)
class Report
include ActiveModel::Model
attr_accessor :reports, :smokereports
belongs_to :reports, :smokereports, :reportlinks
end
我得到的错误是未定义的方法`belongs_to&#39;报告:类和&lt;顶部(必填)&gt; 错误。没有涉及数据库。我只是试图让我知道我想点击任何链接,并且只过滤if / else语句中的内容块。
我是否需要为if / else语句创建一个新的控制器才能工作?如果需要更多代码以便更好地理解,请告诉我。感谢。
答案 0 :(得分:0)
belongs_to
在ActiveRecord::Associations
中定义,ActiveRecord
是ActiveRecord
的一部分。您手动包括ActiveModel::Model
,它不提供任何与关联相关的功能。
使用不同的ActiveModel模块包含对象与ActionPack交互所需的接口。它包括模型名称内省,转换,翻译和验证。除此之外,它允许您使用属性哈希初始化对象,就像ActiveRecord一样。
假设您不需要整个Date <- c("6/1/2015", "6/3/2015", "6/4/2015", "6/5/2015", "6/8/2015")
variable <- c(4,7,10,22,3)
Date <-as.Date(Date, "%m/%d/%Y")
library(xts)
df <- as.xts(variable,Date)
changes <-diff(df)
数据库持久性功能但需要关联样式,那么您需要手动处理。
因此,您必须定义自己的方法来追加/删除相关记录并跟踪它们。
ActiveRecord的关联功能与数据库持久性严格相关。