我在Rails应用中遇到路由问题。当我尝试按照指向new_customer_path的链接时出现此错误:
uninitialized constant CustomersController
这是我想要关注的链接。它是在"新"我的电影控制器的页面。以下是" new"的相关部分。页面:
<div class="row">
<div class="col-xs-12">
<hr />
<%= link_to "Add Customer", new_customer_path, class: 'white' %>
</div>
</div>
客户控制人:
class CustomerController < ApplicationController
def new
@customer = Customer.new
end
def create
@customer = Customer.new(customer_params)
if @customer.save
redirect_to new_customer_path
end
end
private
def customer_params
params.require(:customer).permit(:fname, :lname, :telephone, :email)
end
end
路线:
Rails.application.routes.draw do
resources :customers
resources :movies do
resources :rentals
end
root 'movies#new'
end
客户模式:
class Customer < ApplicationRecord
has_many :rentals
end
非常感谢任何想法/提示!
答案 0 :(得分:4)
您是否错过了s
?
class CustomerController < ApplicationController
应为class CustomersController < ApplicationController
Rails是配置的惯例,意思是:
Object
ObjectsController
如果你愿意,可以改变这种情况,但除非你有充分的理由,否则我会坚持使用惯例。