ActiveScaffold列表视图有一个搜索表单,当用户单击搜索链接时,该表单通过ajax加载。当用户打开列表页面时,我宁愿默认显示表单。
我已经找到了一种在页面加载时触发ajax调用的方法,但我想知道是否有办法让ActiveScaffold自动呈现表单。我可以覆盖模板或方法吗?我已经查看了代码,但没有什么是明显的,至少对我而言。
更新:
srboisvert的回答激励我好好看看。
诀窍是使用模板覆盖来重构以下内容:list.rhtml,_list_header.rhtml,_search.rhtml,以便搜索表单部分呈现为内联。
答案 0 :(得分:2)
有一种方法可以自动渲染它:
active_scaffold:model do | config | config.list.always_show_search = true 端
答案 1 :(得分:0)
我目前没有一个活跃的脚手架项目,但这就是我想出来的方法。
我将firefox与firebug一起使用,并查看单击链接时调用的内容。然后我会去看看那个javascript以及它产生了什么。然后我会在源代码中搜索代码或组合的任何部分,它们对于搜索框ajax来说是相当独特的。在那之后,它应该很容易切割并在没有a ness的情况下经过它。
答案 2 :(得分:0)
选项
config.list.always_show_search = true
工作正常,但仅适用于具体的控制器。它在AS set_default块中使用时抛出异常。有人知道更好的解决方案,然后将其包含在每个控制器中(除了覆盖模板,这是方便但复杂的版本更新)