Accepts_nested_attributes_for:我做错了什么

2023-11-27

我尝试在rails4中创建一对多连接。但是,虽然我没有收到错误,但嵌套属性未存储。

我究竟做错了什么?

车站模型

class Station < ActiveRecord::Base
    has_many :adresses

    accepts_nested_attributes_for :adresses
end

地址模型

    class Adress < ActiveRecord::Base
        belongs_to :station
    end

站控制器类 StationsController

    def new
        @station = Station.new
        @station.adresses.build
    end

    def create
        @station = Station.new(station_params)
        @station.save
        redirect_to @station
    end

    def index
        @stations = Station.all
    end

private

    def station_params
        params.require(:station).permit(:name, adresses_attributes: [ :url ])
    end

end

站:new.html.erb

<%= form_for :station, url: stations_path do |station| %>
    <p>
        <%= station.label :name %><br />
        <%= station.text_field :name %>
    </p>
    <%= station.fields_for :adresses do |adress| %>
        <div class="field">
            <p>
                <%= adress.label :url %><br />
                <%= adress.text_field :url %>
            </p>
        </div>
    <% end %>
    <p>
        <%= station.submit %>
    </p>
<% end %>

[edit]
我构建了这个问题的最小示例,并将其记录为分步说明:https://groups.google.com/forum/#!topic/rubyonrails-talk/4RF_CFChua0


在 Rails 4 中,您还需要允许id属性为adresses。请这样做:

def station_params
    params.require(:station).permit(:name, adresses_attributes: [ :url, :id ])
end

我仍在尝试找到这方面的官方文档:(

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

Accepts_nested_attributes_for:我做错了什么 的相关文章

随机推荐

  • 如何对文件执行 SHA1 哈希?

    如果我有一个文件想要监视任何更改 除了查看文件日期戳等 我如何对其内容执行 SHA1 哈希 I think这就是 GIT 所做的 所以我只想学习如何做 using FileStream stream File OpenRead C File
  • z-index 和 Javascript 事件

    我有几个彼此重叠的 div 具有不同的 z index 值 浏览器的默认行为似乎是触发绑定到最顶部 z index div 的事件 IE 我有多个onclick每个 div 都有一个 但当单击该区域时只有顶部的一个被触发 有没有一种方法可以
  • MVVM - RaisePropertyChanged 将代码变得一团糟

    MVVM 新手 请原谅我的无知 我认为我使用它是正确的 但我发现我的 ViewModel 有太多这些 RaisePropertyChanged SomeProperty 每次我设置一个属性时 我都必须提高那个该死的属性的变化 我怀念那些我可
  • 如何告诉 Proguard 混淆类名

    我希望混淆类名 我在 Proguard cfg 中有这一行 keepclasseswithmembers class public static
  • 使用 Spring 加载属性(通过系统属性)

    我的问题如下 I have server properties针对不同的环境 这些属性的路径是通过名为的系统属性提供的propertyPath 我该如何指导我的applicationContext xml加载给定的属性propertyPat
  • 什么是头文件和库文件? [复制]

    这个问题在这里已经有答案了 可能的重复 头文件和库有什么区别 谁能告诉我头文件和库文件的实际含义是什么以及它们的区别 例如 我们在程序中包含扩展名为 h 的头文件 它只是定义 但实际的实现是在库文件中定义的 这是在链接阶段完成的 这就是人们
  • C# 中 ++i 与 i += 1 有性能差异吗?

    i a 应等于 i i a 在 a 1 的情况下 据说它的效率不如 i 因为它涉及更多的内存访问 或者编译器会让它与 i 完全相同吗 答案很简单 C 编译器将 C 源代码转换为 IL 操作码 没有专用的 IL 操作码可以执行与 运算符等效的
  • 存储为 BINARY XML 时 Oracle XMLType 有多大

    Oracle 文档声称它将 XMLType 存储为 BINARY XML 比存储为 CLOB 更紧凑 但是我如何知道二进制 xml 占用了多少空间呢 CREATE TABLE t x XMLTYPE XMLTYPE x STORE AS B
  • logback - 重新映射特定记录器的日志级别

    我有一个 logback 配置 其中有一个带有阈值过滤器的附加程序
  • 如何在react中设置cookie?

    本来我是用下面的ajax来设置cookie的 function setCookieAjax ajax url Web Servlet setCookie contentType application x www form urlencod
  • 使用 Javascript 将 XML 转换为 CSV

    我正在寻求一些帮助 尝试将从 Amazon Product API 检索到的 XML 转换为 CSV 逗号分隔值 格式 我在这里找到了类似的主题 XML 到 CSV 转换问题但它使用 PHP 我想使用 javascript 这是我所拥有的示
  • 模型 Score() 与 r2_score 之间的差异

    我正在训练 Linear Regression 分类器并尝试衡量其预测准确性 from sklearn metrics import r2 score from sklearn linear model import LinearRegre
  • Pandas Dataframe 滚动两列和两行

    我得到了一个包含两列的数据框 其中包含经度和纬度坐标 将 pandas 导入为 pd values Latitude 0 47 021503365600005 1 47 021503365600005 2 47 02150336560000
  • 在 MVC 3 Razor 中显示上传的图像

    好吧 这个新手在显示上传到服务器的图像时犯了一些错误 model public class Person public int ID get set public string Name get set public string Imag
  • 如何在模态对话框中设置输入值?

    我正在研究 添加链接 功能 为此我正在使用来自 Twitter Bootstrap JS 的模态插件 在主页上只有 链接 字段需要填写 当用户单击 添加链接 按钮时 会弹出一个模式 用户会看到填写 3 个字段的完整表单 链接 标题 标签 但
  • 找到接口 org.apache.poi.util.POILogger,但类是预期错误

    public String readExcel String columnname String UserType try FileInputStream file new FileInputStream path SuppressWarn
  • require() 实际上返回什么,文件还是函数

    例如 我有 profile js var EventEmitter require events EventEmitter var https require https var http require http var util req
  • Java BigDecimal:四舍五入到最接近的整数值

    我需要以下结果 100 12 gt 100 00 100 44 gt 100 00 100 50 gt 101 00 100 75 gt 101 00 round or setScale 我该怎么办 您可以使用setScale 将小数位数减
  • 我正在运行什么 GCD 队列(无论是主队列还是非队列)?

    我正在尝试编写一些线程安全的方法 所以我使用 dispatch queue t main dispatch get main queue dispatch sync main self doSomethingInTheForeground
  • Accepts_nested_attributes_for:我做错了什么

    我尝试在rails4中创建一对多连接 但是 虽然我没有收到错误 但嵌套属性未存储 我究竟做错了什么 车站模型 class Station lt ActiveRecord Base has many adresses accepts nest