如何使用其他模型的列

时间:2012-01-30 10:42:17

标签: ruby-on-rails ruby-on-rails-3 activerecord model ruby-on-rails-3.1

我试图弄清楚如何在我的个人资料模型中使用其他模型的列

User model
  has_one :profile

Profile model
  belongs_to :user, :dependent => :destroy

尝试了所有可能的选项无济于事

在我的个人资料模型中:

def get_column_value_from_user_model
    user.username
end

在我的个人资料模型中从用户模型中获取值的正确方法是什么?

当创建一个调用上述函数的新用户从用户模型中获取值时,从Rails控制台出现此错误:

NoMethodError: undefined method `username' for nil:NilClass

用户模型中的用户名列存在。

1 个答案:

答案 0 :(得分:1)

您的错误

NoMethodError: undefined method `username' for nil:NilClass

表示没有与该配置文件关联的用户对象。你能查看<#your_profile_object> .user_id返回的内容吗?