【问题标题】:undefined method `model_name' for NilClass:Class - where's the error?NilClass:Class 的未定义方法“model_name” - 错误在哪里?
【发布时间】:2012-05-07 17:14:31
【问题描述】:

我一直在尝试解决这个问题,但我看不到错误。

当我去jobs/new。而不是看到我在视图中指定的形式。我正在接收 - undefined method model_name' for NilClass:Class

这是我定义新动作的控制器。

class JobsController < ApplicationController

  respond_to :html, :json

  ...

  def new
    @jobs = Job.new
    respond_with @jobs
  end

还有我的看法。

<%= form_for(@jobs) do |f| %>
  <div class="field">
    <%= f.label :name %><br />
    <%= f.text_field :name %>
  </div>
  <div class="field">
    <%= f.label :client %><br />
    <%= f.text_area :client, rows: 6%>
  </div>
  <div class="actions">
    <%= f.submit %>
  </div>
<% end %>

还有我的模特。

class Job < ActiveRecord::Base
  belongs_to :client
end

根据我浏览器中的错误消息,错误的来源是第 1 行。但我可以看出哪里出错了?

【问题讨论】:

  • 你想把什么放到client字段中?

标签: ruby-on-rails ruby ruby-on-rails-3.2


【解决方案1】:

这会起作用,但没有意义:)

def new
  @jobs = Job.new
  @jobs.client= CLient.new
  respond_with @jobs
end

您想在client textarea 中添加什么内容?

【讨论】:

  • 我自己修复了 :) 我将视图中的 @jobs 文本更改为 :jobs 并且它起作用了!不过谢谢你的回复:)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-12-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多