Html 没有与[POST]匹配的路线”/帐户/新的“;

Html 没有与[POST]匹配的路线”/帐户/新的“;,html,ruby-on-rails,Html,Ruby On Rails,我正在尝试创建一个新帐户。但是由于某种原因,我在尝试提交表单时遇到了这个错误,没有路径匹配[POST]“/account/new”。这是我的申请表: <%= form_for @account, url: new_account_path, html: { method: :post } do |form| %> ROUTES.RB 客户控制员: class AccountController“show”,:controller=>“account”}缺少必需的键:[:id]现在

我正在尝试创建一个新帐户。但是由于某种原因,我在尝试提交表单时遇到了这个错误,
没有路径匹配[POST]“/account/new”
。这是我的申请表:

<%= form_for @account, url: new_account_path, html: { method: :post }  do |form| %>
ROUTES.RB 客户控制员:
class AccountController
NEW.HTML.ERB

新帐户计划
试验
1名工人

1任务

价格:免费

一级 无限工人

无限转让

价格:9.00美元


我做错了什么。它应该点击创建操作吗?现在不是。

它就在你的路线上

您正在
POST
ing进入
NEW
路线。那不行。“新建”是为用户输入数据而呈现表单的地方。Create是一个操作,它将接受发布到它的数据

因此,改变这一点:

<%= form_for @account, url: new_account_path, html: { method: :post }  do |form| %>

为此:

<%= form_for @account, url: account_path, html: { method: :post }  do |form| %>

简化:

<%= form_for @account do |form| %>


只要您的@account是account.new,它就应该工作。

尝试在routes.rb中更改此代码
资源:帐户

致:
资源:帐户

然后您可以使用此代码

行的
表单更改为仅此,如果您遵循约定而不是配置,rails将自动处理路由

<%= form_for @account do |form| %>


希望有帮助

我也有类似的问题。我在类似的帖子上尝试了所有答案,但没有任何效果,包括上面的那些

我甚至删除了这个应用程序,并重复了这个过程,并在同一个问题上陷入困境

在经历了许多挫折之后,我意识到这与文本区域有关。在每种情况下,我都将随机文本从网页复制到引发错误的正文文本字段中。我知道这一点,因为我决定改为随机输入文本,瞧!它在提交方面起了作用

一直以来都没有什么问题。由于,我猜它必须与我复制的字符在后台与代码混淆,因为它将不理解的内容转换为HTML,如这里所述


这是我自己的特殊情况,我想我应该分享。

我得到这个错误,代码
没有路由匹配{:action=>“show”,:controller=>“account”}缺少必需的键:[:id]
现在我得到这个错误
未定义的方法
accounts_path',从路径中删除s。应该是帐户路径
<%= form_for @account, url: new_account_path, html: { method: :post }  do |form| %>
<%= form_for @account, url: account_path, html: { method: :post }  do |form| %>
<%= form_for @account do |form| %>
<%= form_for @account do |form| %>