我來自Java/PHP背景,我正在嘗試學習Rails,但我發現'convention'的東西真的很棘手(這可能不會幫助我大多數時候在火車上沒有網絡訪問)。這個我真的很難過 - 我已經閱讀了關聯基礎知識指南和一些教程,但我仍然無法讓這個異常消失。試圖創建相關模型的Rails NoMethodError
型號:
class JobSeeker < ActiveRecord::Base
attr_accessible :fullName, :dob, :roleTagline, :expTagline, :phoneNumber,
:country, :email
belongs_to :user
end
class User < ActiveRecord::Base
attr_accessor :password
attr_accessible :username, :email, :password, :password_confirmation
# other unrelated stuff ...
has_one :job_seeker, :dependent => :destroy
end
用戶控制器:
class UsersController < ApplicationController
def create
@user = User.new(params[:user])
@job_seeker = @user.job_seeker.create(params[:user])
if @user.save
sign_in @user
flash[:success] = "Welcome to the Sample App!"
redirect_to @user
else
@title = "Sign up"
render 'home/index'
end
end
例外:在UsersController#
NoMethodError創建
未定義的方法`創建」的零:NilClass
問題是零:NilClass,我想。這就像Rails不知道的那樣:job_seeker是一個JobSeeker或者其他的東西。我嘗試將它重命名爲陽光下的所有東西(:job_seekers,:jobSeeker等),但現在我有點迷路了。
JobSeeker的數據庫表有一個名爲user_id的整數列。
我在Windows上使用Rails 3.1。
我確定這很簡單,但我非常感謝任何幫助。非常感謝!
太棒了,完美的作品!那是在一個手冊頁的地方,以備將來參考?謝謝! – Dave 2012-02-21 20:49:10
'has_one'關聯文檔可以在這裏找到:http://api.rubyonrails.org/classes/ActiveRecord/Associations/ClassMethods.html#method-i-has_one – 2012-02-21 21:03:24