Ruby on rails 由控制器和方法替换的参数数组

Ruby on rails 由控制器和方法替换的参数数组,ruby-on-rails,Ruby On Rails,我正在尝试在我的RoR应用程序中检索post参数。但是,当我打印时: params 它的反应是 { "action":"new", "controller":"question" } 这就是控制器和动作。。如何从控制器引用post变量 在我的日志中,我收到错误:警告:无法验证CSRF令牌的真实性 这就是获取post变量的方法。如果他们不在那里,那么您的表单或发出请求的任何东西都有问题。放弃您的自定义路径match”/new/question“=>“question#new”,:via=>:p

我正在尝试在我的RoR应用程序中检索post参数。但是,当我打印时:

params
它的反应是

{
"action":"new",
"controller":"question"
}
这就是控制器和动作。。如何从控制器引用post变量

在我的日志中,我收到错误:
警告:无法验证CSRF令牌的真实性

这就是获取post变量的方法。如果他们不在那里,那么您的表单或发出请求的任何东西都有问题。

放弃您的自定义路径
match”/new/question“=>“question#new”,:via=>:post
您不需要它,这只会让事情变得混乱。新操作不接受参数,应仅响应GET请求

只需将HTTPPOST请求发送到您的/url/questions,rails就会知道如何调用create操作,您可以传递任何需要的参数

新操作用于呈现不接受POST请求的表单。
同样,如果您向
您的/url/questions
发送PUT请求,rails只知道在questions控制器中调用更新操作。这就是RESTfull路线的全部要点。

伙计,你的布局中是否包含“csrf\u meta\u标记”

<%= csrf_meta_tags %>


如果没有,rails将丢弃所有POST参数…

hmm。那么为什么它要打印动作控制器呢?除了post参数之外,它还应该有这些参数吗?简单回答。。。是的,它看起来像是HTTPGet请求的结果,而不是POST请求。显示日志文件条目,以便我们更好地了解正在发生的情况。在黑暗中拍摄->很可能您使用的是链接而不是按钮,或者您没有为问题设置路线controller@jamesw问题已更新该请求不是来自您的浏览器。看起来您正试图从外部源(如curl命令或其他外部应用程序)发布。也许是手机?请发布该请求的日志文件条目的完整内容。我们完全盲目地工作,没有任何理由that@jamesw是的,我在本地服务器(webrick)上运行应用程序,我使用http工具创建对它的post请求<代码>于2013年4月13日星期六10:16:54-0400由QuestionController开始发布127.0.0.1的“/new/question”#new as*/*警告:无法验证CSRF令牌的真实性这是您的问题
Started POST”/new/question“
您知道,绕着Rails的错误路线是在寻找一个新的控制器,这个控制器的动作有问题,正如我所说的,就Rails而言,是错误的路线。你需要将你的发帖请求改为提问/发帖。这里没有布局。阅读问题下的评论