Deviseを使用してRails 3.1プロジェクトに取り組んでいます。Rails 3.1子を保存するときの親属性の使用方法
マイユーザモデルhas_many:コースとコースbelongs_to:user。
ユーザーは、コースモデルが保存する前にチェックする必要があるブール属性のマイルがあります。私はこのようなコースモデルにbefore_saveコールバックを使用しようとしている:
明らか# check if user preference is miles, if so convert entered value to kilometers. All
# distances are stored as kilometers and converted to miles if necessary
before_save :convert_distance
def convert_distance
if course.user.miles
course.distance = course.distance * 1.6
end
end
新しいコースがまだ設定のuser_idを持っていないので、私はcourse.user.milesを使用することはできません。
どのようにしてuser.miles属性の値を確認できますか?コントローラーでこれを行う必要がありますか?
実際の問題は、自己の代わりにコースを使用していたことです。私はcourse.user.milesをself.user.mileに変更しました。しかし、あなたの応答は盲人を取り除いた - ありがとう! – jacoulter