ruby-on-rails-3 - 使用灵活的小部件设计 Rails 仪表板的理想方式

标签 ruby-on-rails-3

我一直在努力寻找正确的方法来为仪表板/门户设计 Rails 模型/ Controller ,以支持简单/干净的小部件开发。我已经(作为一种消遣)写了一个 jQuery/jQuery-UI/CSS 基本 View ,它已经计算出列/顺序 HTML 和控件以重新排序/最小化/删除小部件,现在我回到如何最好设计模型和 Controller 。

作为查找所有小部件信息的中心位置,我有一个小部件模型。 (目前作为非 ActiveRecord)理想情况下,我希望小部件索引 View 只需从 Controller 中获取小部件,并且模型将包含呈现 View 所需的小部件属性。这将包括小部件“部分”和“ Controller ”属性, View 可以使用这些属性在我的仪表板 View 中呈现特定小部件的部分 View 。

我不想让我的 Widget Controller 重载,因为它们的部分 View 可能会使用一堆潜在的 widget 特定数据。相反,我想通过仅指定要使用的小部件的部分和 Controller 来让部分渲染本身。然后局部 View 和 Controller 可以为该小部件做任何他们需要做的事情。

Widget Controller Index --> render @widgets --> widget1 widdget1_controller/partial view1
                                        \ \->   widget2 widdget2_controller/partial view2
                                         \-->   widget3 widdget3_controller/partial view3

仪表板模型将包含列、顺序、部分 View 、 Controller 。

小部件特定的部分 View 和 Controller 将位于 Controller 和 View /小部件文件夹的子文件夹下,以保持整洁。

我希望这对尝试添加 AJAX 支持有所帮助。每个小部件 Controller 都可以处理自己的 Controller 操作(比如编辑小部件或保存某些东西),我可以让客户端浏览器对部分进行 AJAX 调用以获取更新信息,而无需调用原始小部件 Controller 等...

大家怎么看?你有更好的建议吗?

最佳答案

现在可能已经晚了,但是单元格上有一个名为 Apotomo 的扩展名,它基本上使用操作和 ajax 扩展单元格以制作小部件。它非常棒,而且他们有关于完成您正在谈论的整个小部件的教程。如果为时已晚,我想将您的单元格代码移植到小部件会很容易,因为它们非常相似。

关于ruby-on-rails-3 - 使用灵活的小部件设计 Rails 仪表板的理想方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9657419/

相关文章:

ruby-on-rails - 使用 Ruby On Rails 在 Controller 中渲染部分

ruby-on-rails - rails 表单动态添加字段

ruby-on-rails - 如何在页面加载时加载嵌入的 ruby​​ javascript 文件?

ruby-on-rails - 回形针附件的后台处理

ruby-on-rails - Rails 3 已经发布,但是他们还会支持 Rails 2.3.x 吗?

ruby-on-rails - 在 Ruby On Rails/PostgreSQL 中按日期对时间戳字段进行分组

jquery - 当我尝试使用 ajax 调用自动保存表单字段时,在 jQuery 中出现错误

ruby-on-rails - 我应该在哪里存储常量数据,然后如何在 Rails 中引用它?

ruby-on-rails-3 - 在 Rails 3 中创建新闻源

ruby-on-rails - 如何避免阴影应用于 Gmaps4rails 中的 rich_marker