などのように、私は私の項目のモデル(非常に緩く)でいくつかのコードを持っている:セルフID、レコードが作成される前に - レール3
def author_id=(xyz)
book = Book.find_by_author_id(xyz)
book.author_id = self.id
end
self.idがが設定されていないようです、新しいレコードを作成する...任意のアイデア?
などのように、私は私の項目のモデル(非常に緩く)でいくつかのコードを持っている:セルフID、レコードが作成される前に - レール3
def author_id=(xyz)
book = Book.find_by_author_id(xyz)
book.author_id = self.id
end
self.idがが設定されていないようです、新しいレコードを作成する...任意のアイデア?
idは、データベースに保存した後にのみ記録するように設定されています。ここで単純なコールバックを追加することができます
新しいレコードを作成すると、オブジェクトがデータベースにまだ存在しないため、IDはまだ設定されていません。インスタンスメソッドnew_record?()
でテストできます。
self
がnew_record?
(DBに保存されていない)の場合、まだIDがないため、このようなIDを割り当てることはできません。ただし、book.author
をself
に設定することは可能です。
これがあなたのケースでない場合は、質問を少し指定することを検討する必要があります。