仪表板范围内的发布请求不起作用
问题描述:
经过身份验证的用户应该能够通过他的仪表板上的表单添加钱包地址。在我的路线仪表板范围内的发布请求不起作用
scope '/dashboard', module: :dashboard do
get '/', to: 'dashboard#index', as: '/dashboard'
post '/eth_address', to: 'dashboard#eth_address'
end
我的形式
<%= form_for eth_address_path do |f| %>
<%= f.label :eth_address %>
<%= f.text_field :eth_address %>
<%= f.submit "Save" %>
<% end %>
的意见
/仪表板/仪表板/ index.html.erb
而且我简单的控制器
Dashboard::DashboardController
在
controllers/dashboard/dashboard_controller.rb
与方法
def eth_address
eth_addr = params[:eth_address]
EthereumWallet.create(user_id: current_user.id,
address: eth_addr)
end
仪表板的Rails的路线
dashboard GET /dashboard(.:format) dashboard/dashboard#index
eth_address POST /dashboard/eth_address(.:format) dashboard/dashboard#eth_address
,并提交后我看到这一点:
No route matches [POST] "/dashboard"
我不知道为什么它要求我从/ POST请求仪表板。
感谢
答
使用别名eth_address
post '/eth_address', to: 'dashboard#eth_address', as: :eth_address
+0
存在问题stil。 – zOs0
答
的解决办法是改变
form_for
新
form_with
和新形式
<%= form_with url: :eth_address_path do |f| %>
<%= f.label :eth_address %>
<%= f.text_field :eth_address %>
<%= f.submit "Save" %>
<% end %>
作品相当不错
显示您的路线。耙路径 – krishnar
添加路由到问题 – zOs0
form_for:eth_address_path – krishnar