gpt4 book ai didi

ruby-on-rails - Rails - 呈现自定义 xml

转载 作者:数据小太阳 更新时间:2023-10-29 01:56:46 26 4
gpt4 key购买 nike

谁能举例说明如何在 Rails Controller 中使用 FOR 和 IF 循环?

这是一些“伪代码”(非常宽松地使用该术语),希望能说明我想做什么 -

为了这个例子,我使用了一个名为“椅子”的表,我想查询“年龄”列以显示所有(例如)2 岁的椅子。 [:id] 是我传递给它的数字变量。在我的工作项目中,我已经设置了路由并且能够呈现基本的 :all xml 到 URL,但我需要它来显示特定记录,如下所示......

For each chair in chairs
if chair.age = [:id]
render records to xml
end
end

非常感谢任何帮助。

编辑 - 我了解 FOR 和 IF 循环的工作原理,只需要一些示例来说明如何在 Rails Controller 中实现上述目标。

最佳答案

在你的椅子模型中:

class Chair < ActiveRecord::Base
:scope :years_old, lambda { |time_ago| { :conditions => ['age == ?', time_ago] }
end

然后你可以这样做:

render :xml => Chairs.years_old(2)

我对 render 的确切语法一头雾水,但创建作用域可以使您的 Controller 代码更具可读性,而不必在那里执行循环/条件。只需将您的范围命名为清晰易懂的名称...

这一切都假设您想要获得年龄 == 2 的所有椅子,而不仅仅是其他搜索的子集。如果这个假设是错误的,那么 Lucapette 的答案更好。

关于ruby-on-rails - Rails - 呈现自定义 xml,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7333420/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com