【发布时间】:2018-12-27 08:26:00
【问题描述】:
您好,我是 Rails(和 Stackoverflow)的新手,请原谅我的问题。
我对“Rails 入门”指南中的 <%= form_with(model: [ @article, @article.comments.build ], local: true) do |form| %> 感到困惑。
guide 提到了
[@article, @article.comments.build]“构建嵌套路由”,但它是如何做到的呢?正如edgeguides
model: @article中所述,将实际对象@article传递到表单中。那么我们如何将嵌套路由传递给模型参数呢?
提前感谢您的指导和耐心等待!
更新
经过大量研究,我取得了以下进展
build 是 new 的别名。
[@article, @article.comments.build] 是一个数组
model 接受一个类的实例(在本例中为comment),并推断范围(:comment)和url(article_comments_path(@article))。因为传入的实例是新的,所以rails推断方法是postSource
那么哈希[@article, @article.comments.build]如何返回一个类comment的实例,同时告诉rails正确的URL (article_cmets_path(@article))?
【问题讨论】:
标签: ruby-on-rails