我有一個屬於用戶和公司的Log模型。爲了設置這個,我在logs_controller的create動作中使用了這段代碼。在模型導軌中設置嵌套屬性
def create
@log = Log.new(params[:log])
@log.user = current_user
@log.firm = current_firm
@log.save
end
CURRENT_USER和current_firm來自application_helper.rb
輔助方法雖然這個作品它使控制器的脂肪。我怎樣才能把它移到模型上?
我個人並不認爲你是什麼在這裏很胖,可能有很好的理由來完全按照你的要求進行編碼。事實上,您可能需要這樣做,以避免將用戶和公司放入模型的attr_accessible中。 – aceofspades
太多地方就是這樣。最初我對它很好,但現在它很多;) –
我同意'attr_accessible'。我喜歡這個工人類的原因之一是它有助於強制創建模型實例的單一入口點,並強制建立必要的關係(雖然驗證也會對此有所幫助;工作者方法的簽名有助於充當指引)。它還使測試控制器中可用於操縱模型的功能變得簡單。 – deefour