我收到一个错误消息“未初始化的常量Admins :: ProductsController :: Product”,我一直在努力弄清自己整天在做什么错并且什么都没做。
我正在尝试通过表单将数据提交到数据库。我还将控制器和模型放在子目录“ admins”中。
controllers / admins / products_controller.rb
class Admins::ProductsController < ApplicationController def new end def show @product = Product.find(params[:id]) end def create @product = Product.new(product_params) @product.save redirect_to @product end private def product_parms params.require(:product).permit(:title, :content) end end
views / admins / products / new.html.erb
<%= render 'layouts/adminsidebar' %> <%= form_for :product, url: admins_products_path do |f| %> <%= f.label :title %> <%= f.text_field :title %> <%= f.label :content%> <%= f.text_area :content%> <%= f.submit %> <% end %>
routes.rb
namespace :admins do get 'new' => 'products#new' resources :products end devise_for :users root 'pages#index' get 'about' => 'pages#about' get 'productsdis' => 'products#productsdis' get 'adminpanel' => 'admins#adminpanel' get 'admin' => 'admins#admin' end
迁移文件
def change create_table :admin_products do |t| t.string :title t.text :content t.timestamps end end end
models / admin / product.rb
class Admin::Product < ApplicationRecord
end
我收到一个错误消息“未初始化的常量Admins :: ProductsController :: Product”,我一直在努力弄清自己整天在做错什么,却一无所获。我正在尝试提交数据...
您在Product.new
应该在Admin::ProductsController
的位置呼叫Admin::Product.new