Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/88.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html 单击获取未定义的方法“model#u name';班级:班级_Html_Ruby On Rails_Erb - Fatal编程技术网

Html 单击获取未定义的方法“model#u name';班级:班级

Html 单击获取未定义的方法“model#u name';班级:班级,html,ruby-on-rails,erb,Html,Ruby On Rails,Erb,我不熟悉rails。我正在尝试创建一个包含姓名、电子邮件、电话号码和消息字段的表单。当我点击链接到表单的按钮时,我得到一个错误: NilClass:Class的未定义方法“model_name” 以下是_form.html.erb页面的代码: <%= form_for(@contact) do |f| %> <% if @contact.errors.any? %> <div id="error_explanation"> <h2

我不熟悉rails。我正在尝试创建一个包含姓名、电子邮件、电话号码和消息字段的表单。当我点击链接到表单的按钮时,我得到一个错误:

NilClass:Class的未定义方法“model_name”

以下是_form.html.erb页面的代码:

<%= form_for(@contact) do |f| %>
  <% if @contact.errors.any? %>
    <div id="error_explanation">
      <h2><%= pluralize(@contact.errors.count, "error") %> prohibited this contact from being saved:</h2>

      <ul>
      <% @contact.errors.full_messages.each do |msg| %>
      <li><%= msg %></li>
  <% end %>
  </ul>
</div>
 <% end %>

<div class="col-md-4">
<div class="form-group">
  <div class="field">
    <%= f.label :name %><br />
    <%= f.text_field :name, :class=>"form-control", :placeholder=>"Enter Your Name" %>
  </div>
  <div class="field">
    <%= f.label :email %><br />
    <%= f.text_field :email, :class=>"form-control", :placeholder=>"Enter Your Email"%>
  </div>
  <div class="field">
    <%= f.label :phone %><br />
    <%= f.text_field :phone, :class=>"form-control", :placeholder=>"Enter Your Phone Number"%>
   </div>
</div> 
</div>
<div class = "col-md-8">
<div class="form-group">
  <div class="field">
    <%= f.label :description %><br />
    <%= f.text_area :description,  :class=>"form-control", :size=>"20x5", :placeholder=>"Enter Your Message"%>
  </div>
</div>
</div>

 <div class="actions">
  <%= f.submit "Submit", :class=> "button1"%>
 </div>  
<% end %>

禁止保存此联系人:

“表单控件”,:占位符=>“输入您的姓名”%>
“表单控件”,:占位符=>“输入您的电子邮件”%>
“表单控件”,:占位符=>“输入您的电话号码”%>
“表单控件”、:size=>“20x5”、:placeholder=>“输入您的消息”%> “按钮1”%>
这是联系人的代码。\u controller.rb是:

class ContactsController < ApplicationController


  # GET /contacts/new
  # GET /contacts/new.xml

  def new
  @contact = Contact.new

  respond_to do |format|
    format.html # new.html.erb
    format.xml  { render :xml => @contact }
  end
end

# POST /contacts
# POST /contacts.xml
def create
  @contact = Contact.new(params[:contact])

  respond_to do |format|
    if @contact.save
      format.html { redirect_to(root_path, :notice => 'Thank you for contacting us. We will get back to you shortly.') }
      format.xml  { render :xml => @contact, :status => :created, :location => @contact }
      else
        format.html { render :action => "new" }
        format.xml  { render :xml => @contact.errors, :status => :unprocessable_entity }
      end
    end
  end
end
class contacts控制器@contact}
结束
结束
#职位/联系人
#POST/contacts.xml
def创建
@联系人=联系人。新建(参数[:联系人])
回应待办事项|格式|
如果@contact.save
format.html{redirect_to(root_path,:notice=>“感谢您与我们联系。我们将很快与您联系。”)
format.xml{render:xml=>@contact,:status=>:created,:location=>@contact}
其他的
format.html{render:action=>“new”}
format.xml{render:xml=>@contact.errors,:status=>:unprocessable_entity}
结束
结束
结束
结束
此外,我还在
routes.rb
文件中添加了
resources:contacts

请帮助我理解这里的问题是什么。
谢谢。

请将
路由.rb修改为:

使用

而不是

resources: contacts

请将
routes.rb
修改为:

使用

而不是

resources: contacts

您正在分部中调用
@contact
——它应该是一个本地变量,在调用分部时定义:

<%= render partial: "form", locals: { contact: @contact } %>

。。。然后

#_form.html.erb
<%= form_for contact do ... 
#_form.html.erb

您正在分部中调用
@contact
——它应该是一个本地变量,在调用分部时定义:

<%= render partial: "form", locals: { contact: @contact } %>

。。。然后

#_form.html.erb
<%= form_for contact do ... 
#_form.html.erb

你能复制并把错误堆栈放在这里吗?我希望你也定义了一个Model contact.rb,只是确认一下?是的,我已经定义了Model contact.rb以及完整的错误@Harrybomrahe这里是model
class Contact
是否可以复制并将错误堆栈放在这里。我希望您也定义了model Contact.rb,只是确认一下?是的,我已经定义了model Contact.rb以及完整的错误@Harrybomrah这是一个模型
类联系人
谢谢,我只在代码中有这样的方式。只是我这边的一个打字错误。谢谢,我只有在代码上有这样的错误。只是我这边的打字错误。