2

ActiveScaffold 列表视图有一个搜索表单,当用户单击搜索链接时,该表单会通过 ajax 加载。我希望在用户打开列表页面时默认显示表单。

我想出了一种在页面加载时触发 ajax 调用的方法,但我想知道是否有办法让 ActiveScaffold 自动呈现表单。是否有我可以覆盖的模板或方法?我已经查看了代码,但至少对我来说没有什么明显的。

更新:

srboisvert 的回答启发了我更好地了解。

诀窍是使用模板覆盖来重构以下内容:list.rhtml、_list_header.rhtml、_search.rhtml,以便搜索表单部分呈现内联。

4

3 回答 3

2

有一种方法可以让它自动呈现:

active_scaffold :model 做 |config| config.list.always_show_search = true 结束

于 2009-07-03T21:10:57.247 回答
0

我目前手头没有一个活跃的脚手架项目,但这是我想弄清楚的方法。

我会使用安装了 firebug 的 firefox,并查看单击链接时调用的内容。然后我会去看看那个 javascript 以及它正在生成什么。然后,我将在源代码中搜索对于搜索框 ajax 而言相当独特的代码或组合的任何部分。之后,它应该很容易在没有 ajaxyness 的情况下剪切和过去。

于 2008-12-10T11:29:10.047 回答
0

选项

config.list.always_show_search = true

工作正常,但仅在具体控制器上。在 AS set_default 块中使用时会引发异常。有人知道更好的解决方案,然后将其包含在每个控制器中(除了覆盖方便但版本更新复杂的模板)

于 2010-02-08T18:45:13.787 回答