如何以 Rails 形式处理多个模型

2024-01-24

http://weblog.rubyonrails.org/2009/1/26/nested-model-forms http://weblog.rubyonrails.org/2009/1/26/nested-model-forms

这篇文章有助于学习如何以 Rails 形式处理多个模型。只要模型是嵌套的,它就可以工作。如果不是怎么办?假设我有一个表单,用户可以在其中填写个人详细信息、地址详细信息和一堆指定她的兴趣的复选框。这个单一表单中至少涉及 3 个表,在没有 3 个不同的保存按钮的情况下处理这个问题的最佳方法是什么?


两种选择:

首先是主动演示者 https://github.com/jamesgolick/active_presenter这对此很有效。

第二个只是使用fields_for:

<%= form_for @user do |f| %>

   <%=f.label :name %>
   <%=f.text_field :name %>

   <%= fields_for @address do |fa| %>
      <%=fa.label :city %>
      <%=fa.text_field :city %>
   <% end %>

<% end %>

然后在控制器中保存记录。

 @user = User.new(params[:user]) 
 @address = Address.new(params[:address])

不过 ActivePresenter 效果很好。

还发现了一个铁路论坛帖子 http://railsforum.com/viewtopic.php?id=717通过谷歌,效果很好。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何以 Rails 形式处理多个模型 的相关文章

随机推荐

  • 如何替换cmd.exe中的百分号字符?

    在 Windows 命令提示符中 我尝试替换中的空格set string Hello World用字符串 20 天真地尝试像这样使用字符串文字 20 set string string 20 结果是HelloWorld20 尝试使用转义字符
  • Java Swing 菜单速度缓慢的解决方法

    在 Java 7 和 8 中 Swing 菜单中存在一个错误 导致在其他 X11 应用程序正在运行时通过 X11 远程运行应用程序时速度缓慢 这个问题是在 Java 7 中引入的 并且从未得到修复 有人对解决方法有任何建议吗 使用 nxcl
  • 在python3 asyncio中使用串口

    我正在尝试 但到目前为止 未能使用 python asyncio 访问串行端口 我真的很感激关于在简单的 fd 上使用新的 python 异步框架的任何提示 Cheers James 这是一个使用的工作示例pyserial异步 https
  • C# 中 CreateObject 的等效代码

    我有一个VB6代码 谁能告诉我怎么写C 这段代码如下 Set Amibroker CreateObject Broker Application Set STOCK Amibroker Stocks Add ticker Set quote
  • 循环提示输入另一个密码时出现问题

    我需要一些关于 EXPECT 脚本的帮助 我正在尝试在访问大量主机之前自动登录 并在用户错误输入密码时进行处理 我首先获取用户名和密码 然后针对特定主机对其进行验证 如果密码无效 我想循环并再次询问用户名和密码 我正在尝试这个 省略前面几行
  • 当我运行代码时,我得到一个奇怪的输出(在问题中列出)。我该怎么办? [关闭]

    Closed 这个问题需要细节或清晰度 help closed questions 目前不接受答案 from turtle import Turtle Screen timmy the turtle Turtle timmy the tur
  • 合并两个具有不同列数的表

    我有两张表 表 A 和表 B 它们具有不同数量的列 假设表 A 有更多列 如何合并这两个表并为表 B 没有的列获取 null 对于具有较少列的表 将额外的列添加为空 例如 Select Col1 Col2 Col3 Col4 Col5 fr
  • Hilt ViewModel 没有零参数构造函数

    Cannot create an instance of class com comp app winners WinnersViewModel Caused by java lang InstantiationException java
  • 如何收到从 SD 卡删除任何文件的通知

    我想创建Dumpster https play google com store apps details id com baloota dumpster像应用程序一样 为此我希望在用户删除任何文件时收到通知 以便我可以将其保存到我的应用程
  • 如何使用多个数组创建 JSON 对象?

    我以前从未使用过 JSON 所以我不熟悉它的语法 目前我有多个包含不同数据的数组 我想创建一个 JSON 对象 其中包含多个数组 每个数组都有几条数据 E g 一个名为 cars 的对象 包含多个数组 每个数组对应不同品牌的汽车 每个数组中
  • ASP.NET Core MVC 应用程序中的 Microsoft LocalReport (rdl)

    我正在使用 ASP NET Core 2 1 MVC 运行一个项目 在我们公司 我们确实使用 SQL Report Builder rdlc 和 rdl 文件 完成了大量工作 因此 我们希望在 ASP NET Core MVC Web 应用
  • 如果弹出窗口

    有没有办法判断当前窗口是否是弹出窗口 这就是我现在所拥有的 但由于某种原因它不起作用 我试图确保某些页面仅显示在弹出窗口中 if opener window location error php 即使窗口没有弹出 opener 的值也是 o
  • ColdFusion 在字符串中构造数据库查询时添加额外的引号

    我正在 ColdFusion 中编码 但试图留在 cfscript 中 所以我有一个函数允许我传入一个查询来运行它
  • 如何将 Tensor 转换为 ndarray(里面有对抗性图像的张量)

    注意 我已经尝试过不同 SO 问题的解决方案 但没有成功 详细信息如下 我正在学习克莱尔汉斯Python 教程 重点关注this https github com tensorflow cleverhans blob master clev
  • AWS Lambda 上的 Python:来自 botocore.vendored 的“请求”已弃用,但“请求”不可用

    我有一个用于 AWS Lambda 函数的 Python 脚本 该函数向另一个端点发出 HTTP POST 请求 自从Python的urllib2 request https docs python org 2 library urllib
  • 生成唯一的随机字母数字字符串

    我正在开发一个应用程序 允许用户共享简单调查的链接 为此 我想为每个调查生成唯一的 URL 因此具有如下 URL http myapp com aBcDe1F 我希望 URL 的字母数字标识符部分是伪随机的并且有点短 6 8 个字符 现在
  • Highcharts 异步钻取

    我正在关注http jsfiddle net gh get jquery 1 7 2 highslide software highcharts com tree master samples highcharts drilldown as
  • lambda 表达式的扩展方法

    我有一个辅助方法 它获取由 lambda 定义的属性的名称 其工作原理如下 ExpressionUtil GetName Thing t gt t Property returns Property 我想将其转换为扩展方法 因此语法将采用以
  • 在 Linq 中处置 IDisposable

    这是对答案的评论的后续this https stackoverflow com questions 1751153 how do you dispose of idisposableobject create inside of a lin
  • 如何以 Rails 形式处理多个模型

    http weblog rubyonrails org 2009 1 26 nested model forms http weblog rubyonrails org 2009 1 26 nested model forms 这篇文章有助