首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >获取ActionView::MissingTemplate

获取ActionView::MissingTemplate
EN

Stack Overflow用户
提问于 2016-01-27 07:16:29
回答 1查看 104关注 0票数 0

我有一个名为def createCustomer的方法,因此我在名为createCustomer的文件夹中创建了一个名为charge的.html.erb文件,这是控制器的名称。此charge文件夹位于views文件夹下。

我把这个记在我的日志里

代码语言:javascript
复制
ActionView::MissingTemplate (Missing template charge/createCustomer, application/createCustomer with {:locale=>[:en], :formats=>[:html, :text, :js, :css, :ics, :csv, :vcf, :png, :jpeg, :gif, :bmp, :tiff, :mpeg, :xml, :rss, :atom, :yaml, :multipart_form, :url_encoded_form, :json, :pdf, :zip], :variants=>[], :handlers=>[:erb, :builder, :raw, :ruby, :coffee, :jbuilder]}. Searched in: 2016-01-26T23:00:34.324498+00:00 app[web.1]:   * "/app/app/views"
EN

回答 1

Stack Overflow用户

发布于 2016-01-27 20:22:15

要添加注释,您需要将自己等同于Rails基础设施(convention over configuration):

大多数情况下,控制器的文件名都是snake_case

  • Controllers (主要是resourceful

),

  • 类名是CamelCase,文件名是plural
  • 您应该保留您的控制器名称

下面是它的结构:

代码语言:javascript
复制
# config/routes.rb
resources :customers #-> url.com/customers/new

# app/controllers/customers_controller.rb
class CustomersController < ApplicationController
   def new
      @customer = Customer.new
   end

   def create
      @customer = Customer.new customer_params
      redirect_to @customer if @customer.save
   end

   private

   def customer_params
      params.require(:customer).permit(...)
   end
end

# app/views/customers/new.html.erb
<%= form_for @customer do |f| %>
   ...
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35025901

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档