Rails has_one mit Klassenname und Fremdschlüssel
Ich habe ein Rails-Modell, das ich zwei benutzehas_one
Beziehungen:requester
undfriend
. Wenn ich in der Konsole bin, benutze ich:
f = FriendRequest.all
f[0].requester
Ich bekommeActiveRecord::StatementInvalid: SQLite3::SQLException: no such column: users.requester_id: SELECT "users".* FROM "users" WHERE "users"."requester_id" = 4 LIMIT 1
.
Ich weiß nicht wirklich, wie man eine has_one-Beziehung mit einem Klassennamen und einem Schlüssel angibt, der den Datensatz angibt. Das ist mein Modell:
class FriendRequest < ActiveRecord::Base
has_one :requester, :class_name => "User", :foreign_key => "requester_id"
has_one :friend, :class_name => "User", :foreign_key => "friend_id"
end
Wie könnte ich das machen? In einembelongs_to
Beziehung benutze ich das gleiche, offensichtlich zu ersetzenhas_one
mitbelongs_to
. Vielen Dank!