gpt4 book ai didi

ruby-on-rails - 如何对我的 Rails 应用程序的 CRUD 部分进行 DRY?

转载 作者:行者123 更新时间:2023-12-02 00:46:09 25 4
gpt4 key购买 nike

我正在编写一个应用程序,它与市面上的许多应用程序类似 - 包含 90% 的常规 CRUD 内容和 10% 的“果汁”,我们需要讨厌的业务逻辑和更多的灵 active 和自定义。

关于这 90%,我尽可能地坚持 DRY 原则。只要有 Controller ,我就发现 resource_controller 真的可以工作,我可以摆脱那个区域的所有 Controller ,用通用 Controller 替换它们。

现在我想知道如何获得相同的 View 。在这个应用程序上,我有一个整体的 application.html.erb 布局,然后我必须有另一个布局层,所有 CRUD View 都是通用的,最后是“核心”部分:

  • 在 index.html.erb 上,我只需要生成一个简单的表格,其中包含我指定的字段和标签。

  • 对于新建和编辑,还有通用表单版本,指示标签和字段(如果需要,可以提供自定义字段)。

  • 我不确定我是否需要展示,但如果我这样做,它与新建和编辑一样。

哪些插件和工具(甚至文章和一般指南)可以帮助我完成这项工作?

谢谢,菲利普。

最佳答案

如果您已经 DRY 了 Controller ,现在想要 DRY View ,一种方法是 render :action => *actionname*并将可能更改的 UI 内容存储到实例变量中(以便它们在 View 中可用)这样您就可以重新使用相同的edit View ,new列表显示。例如,您正在编辑与 Foo 相关的内容,那么您的标题应为 Editing <%= @type %> ,你的表单助手也应该如此。 Foo 很可能会变成 bar。因此,您正在为不同的实体(或者我应该说 Controller )重复使用相同的 View 。请记住,不像 redirect_to , render :action只渲染 View ,不调用它试图渲染的 Action 的 Controller Action 。

有一件事是肯定的,如果你想干掉任何东西,你需要标准化或遵循惯例。例如,在本例中,您的 View 结构。

关于ruby-on-rails - 如何对我的 Rails 应用程序的 CRUD 部分进行 DRY?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/477092/

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