【发布时间】:2012-09-04 18:19:44
【问题描述】:
我有一个模特学生。在 studentsController 中,我选择了一组学生。我想在第一条和最后一条记录上附加一个标志。
我会用这样的部分显示学生列表:students/_student,当用户点击每个学生时,他们会得到一个弹出窗口。
我想使用标志来确定这个学生是否是第一个/最后一个,以便我可以在 url 中添加一个查询参数。因此,例如,当您将鼠标悬停在第一个学生上时,网址将如下所示:localhost:3000/student/1?location=first
当显示部分时,部分中不存在集合,所以我不能只做这样的测试:student.first?
有什么想法吗?谢谢。
[编辑]。这最初是对@neils 的回复,但我想我会把它放在那里: 它有效,但是我还有另一个问题。因为我使用的是“自动滚动”功能,当用户向下滚动页面时会加载更多学生(一次 3 个),“第一个”和“最后一个”被添加到每个学生的第一个和第三个学生row 而不是集合的实际第一个和最后一个。我进行自动滚动的方式:我使用 $.getScript 来请求 index.js.erb 文件。该文件像这样呈现 students/_student:render @students,并附加到容器 div。我在该模板 (students/_student) 中呈现 url,因此参数每第一次/第三次呈现一次。
【问题讨论】:
-
为什么不使用 params[:location] 在 url 中传递它??
-
请添加一些代码以便于解决问题。
-
@Sush 我不确定我理解你的意思。我将使用 params[:location] 将其取回并确定它是第一项还是最后一项。我的问题是首先将位置参数附加到 url。我需要弄清楚什么时候附上它,所以我需要知道哪个是第一个,哪个是最后一个。
-
@soundar 我现在正忙于日常工作,所以我不能在以后粘贴任何代码。你有什么具体要我解释的吗?感谢您的回复。
-
好的。你是否像渲染“学生”一样渲染学生,:collection => @students ?
标签: ruby-on-rails