繁体   English   中英

如何从Rails中的New to Create操作传递参数?

[英]How are params passed from the New to Create action in Rails?

我知道,用于Rails表单的new动作通常会实例化一个模型,并提供带有允许参数输入的视图。

def new
  @post = Post.new
end

我没有得到的是用户提交的相同信息如何被传递到create动作中的Post.new方法中:

def create
  @post = Post.new(post_params)
  ...
end

尽管发生页面刷新,Rails如何引导这些参数create

您正在将两个请求相互混合。 当您点击new操作时,将呈现包含form的视图。 随着它的呈现, new动作完成,现在new动作与create动作无关。

您需要采取new操作来通过form_for方法创建一个form ,在该form中您实际传递了一个对象,例如@post

create行动是独立的, params收到,他们什么都没有做new方法,这些params通过接收form中的各种意见new.html.erb文件中呈现。

您还可以通过AJAX甚至使用cURL或POSTMAN-chrome扩展名发送数据,从而在控制器中调用create方法。

如您所问:

尽管发生页面刷新,Rails如何引导这些参数创建?

Rails不会引导这些params ,Rails在后端运行,Rails只是接收那些params 它们是通过HTML表单发送的,正如我之前说的,还有其他发送params方法。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM