簡體   English   中英

rails中的attr_accessor問題

[英]Issue with attr_accessor in rails

我正在開發一個授權是模型的應用程序。 provider是模型的一個領域。 我已經為提供者字段定義了attr_accessor

attr_accessor :provider

雖然我不需要,但在不知不覺中我定義了它並面臨一個問題,當我試圖為模型創建記錄時

Authorization.create(:user_id => user.id, :uid => hash['uid'], :provider =>
hash['provider'])

user_id正在被賦予user.id的值(user是我函數中的變量)但是始終為provider提供null(hash ['provider']包含一個值。

當我刪除attr_accessor時,每件事情都正常,我的問題就解決了。 但為什么它以前不起作用? 我很想知道這是什么問題?

我想你可能想要定義一個attr_accessible (假設提供者是你數據庫中的一個字段。)

attr_accessor是一個ruby方法,用於在類(或rails的上下文,虛擬屬性)上創建屬性(帶有實例變量,getter和setter)。 您想在模型上創建一個,這是attr_accessible的用途。

有關更詳細的說明,請參閱http://www.ruby-forum.com/topic/95220

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM