Rails使用JQuery基于onClick事件在视图中显示记录



我正在使用ruby 2.5.1rails 5.0

我读过一些接近我想要的线程,但还没有找到一个适合我的线程来应用它。

我有一个视图,显示按日期记录的举重练习。显示所有记录没有用处,因为它列出的记录太多太快。目前,在我的控制器中,我有这个来获取上周的所有记录——七(7(天:

@weights = Fitness::Weight.where(admin_user_id: session[:user_id])
.where(created_at: 7.days.ago.beginning_of_day..Time.zone.now.end_of_day)
.order(workout_date: :desc)

在我看来,我做的通常:

<% @weights.each do |w| %>
...

在控制器中,我想创建三个实例对象:当前日期、最后3天和最后7天各一个。我知道怎么做。在我看来,我想添加三个按钮-每个实例变量一个按钮。单击按钮时,页面不会提交,但JQuery将隐藏当前显示的所有记录,然后只显示与单击按钮相关的实例变量的记录。

我已经用PHP和JQuery做了很多次了。我知道我可以在控制器中创建三个实例对象,然后在我的视图中,使用<div>s,我可以使用JQuery来显示/隐藏与单击的按钮关联的<div>。我想也许还有一种更刻薄的方式来做这件事。我读过一次关于对每组记录使用分部来显示的线程,并以某种方式使用JQuery来触发在我的视图中加载哪个分部。但是,(叹气(,我再也找不到那根线了。

我很擅长在点击按钮之前进行编码。从那里开始,在rails中,我不知道如何使它加载实例对象/var和/或partial。我希望有人能给我指明正确的方向:去看教程、线程或提供一些关于如何做到这一点的简单提示。

或者,也许有一种更好、更糟糕的

谢谢你的帮助!

您可以使用基础选项卡来实现这一点。

https://get.foundation/sites/docs/tabs.html

轨道也有很好的基础宝石

https://github.com/foundation/foundation-rails

最新更新