0

2つのモデルクラスがあります。

class Designation < ActiveRecord::Base
  attr_accessible :name
  validates :name, presence: true, uniqueness: { case_sensitive: false }
  has_many :employee_details
  accepts_nested_attributes_for :employee_details
end

class EmployeeDetail < ActiveRecord::Base
  belongs_to :Designation
  attr_accessible :bloodGroup, :dob, :doc, :doj, :empId, :name, :panNo, :status, :Designation
end

EmployeeDetailのデフォルトのスキャフォールドを生成しました。EmployeeDetailページから、指定テキストボックスに整数値を作成して入力しようとすると、エラーが発生します ActiveRecord::AssociationTypeMismatch in EmployeeDetailsController#create Designation(#81846160) expected, got String(#75419260)

誰かが私がこの問題を解決するのを手伝ってくれる?EmployeeDetailController#create:-def create @employee_detail = EmployeeDetail.new(params [:employee_detail])

respond_to do |format|
  if @employee_detail.save
    format.html { redirect_to @employee_detail, notice: 'Employee detail was successfully created.' }
    format.json { render json: @employee_detail, status: :created, location: @employee_detail }
  else
    format.html { render action: "new" }
    format.json { render json: @employee_detail.errors, status: :unprocessable_entity }
  end
end

終わり

4

1 に答える 1

1

モデルを関連付けるときは、小文字バージョンのモデル名を使用する必要があります。

変化する:

belongs_to :Designation

に:

belongs_to :designation
于 2012-08-08T09:24:24.897 に答える