我对rails非常陌生,所以对这个简单的问题道歉...
我有一个单页rails应用程序,我在从根路径创建我的模型的新实例以保存到数据库时遇到问题。
我尝试过使用form_for,但是当我按下提交时,它会尝试发布到'/'而不是'/ MODEL'。
我收到错误:没有路由匹配[POST]“/”
我意识到这可能是一个简单的路由问题,但我无法在网上找到我正在寻找的内容。
此外,如果有人能指出一些深入的资源,我会非常感激。 我已经阅读了“Rails Tutorial”,但我觉得它只是对Rails的工作方式有所了解,而不是为什么。
由于
编辑:
这是我的routes.rb文件:
Rails.application.routes.draw do
root 'static#home'
devise_for :users
resources :card_log
end
和视图文件的片段:
= form_for :card_log do |f|
%p
= f.label :item1
= f.text_field :item1
%p
= f.label :item2
= f.text_field :item2
%p
= f.label :item3
= f.text_field :item3
%p
= f.submit "Submit"
答案 0 :(得分:1)
form_for
的最佳深入资源来自Ruby on Rails edge guide。
如果您的情况,请确保您在routes.rb中有以下内容。将:models
替换为您的每个实际型号名称:
resources :models
在您的视图中,以下内容适用于创建Model的新实例。
form_for(@model)
您还可以明确地定义路线:
form_for(@model, url: model_path(@model), html: {method: "post"})