我試圖抓住我的用戶模型中與授權模型相關的變量。以下在Rails控制檯中工作,但不知道如何將其轉換爲user.rb模型,因爲它不斷給我錯誤,它必須是符號或字符串。做to_s
是不正確的結果。從Rails中的模型到模型關係獲取某些變量
class User < ActiveRecord::Base
has_many :authorizations
def social
user = User.current
token = user.authorizations.pluck(:token).to_s
end
end
我的授權模式也是這樣;
class Authorization < ActiveRecord::Base
belongs_to :user
end
我試着做
class User < ActiveRecord::Base
def social
user = User.current
token = user.authorizations.select(:token).to_s
end
end
在控制檯的作品這樣做以下,但不是當我在做user.authorizations
auth = Authorization.where(:user_id => '54').token
但一切都因爲不正確,要麼有括號或\
斜線內。
是否定義了'的has_many:authorizations'在用戶模式? – AnkitG 2014-09-30 17:22:49
是的..也在我的控制檯做'用戶= User.find('58')'58是用戶ID,然後做'user.authorizations'將帶來正確的記錄。然後我想我也可以做'user.authorizations.token',但是我得到錯誤'未定義的方法「令牌」#'但是令牌在授權和'user.authorizations'中顯示包括令牌在內的所有列。 –
user2419316
2014-09-30 17:26:39
你可以嘗試'user.authorizations.collect(&:token)'? – AnkitG 2014-09-30 17:29:25