唉...我覺得在這一個大的新手,所以可以說我有幾個型號:創建一個created_by列並與rails關聯?
class Question < ActiveRecord::Base
has_many :answers
belongs_to :user
end
class Answer < ActiveRecord::Base
belongs_to :question
has_one :user
end
class User < ActiveRecord::Base
has_many :questions
has_many :answers, :through => :questions
end
所以我的問題是,我不知道怎麼去創建該用戶問題或答案,這個問題(或答案是創建)創建時用戶應確定,用戶應該來自於當前用戶的會話(從authlogic的用戶模型和控制器)在這裏看到:
class ApplicationController < ActionController::Base
helper_method :current_user_session, :current_user
...
private
def current_user_session
return @current_user_session if defined?(@current_user_session)
@current_user_session = UserSession.find
end
def current_user
return @current_user if defined?(@current_user)
@current_user = current_user_session && current_user_session.user
end
end
現在,current_user輔助方法工作正常,但我怎樣才能設置用戶創建問題或答案?像ID喜歡只說@ question.user
順便說一句,我對我的問題的模式有CREATED_BY列,但是當我創建一個新的問題,它保持空。
我意識到我想用CREATED_BY列,但不知道爲什麼聯想不能正常工作,並且列保持空。 – 2009-08-22 05:06:57