わかりましたので、アプリに複数の「status_updates」を持つ複数のユーザーがいます。
各ステータス更新には ID が付けられ、所属するユーザーの関連付けがあります。
したがって、たとえばユーザー 2 のすべてのステータス更新は、ID が 3、10、34、55 の順序である可能性があります。
つまり、各 status_update には、そのユーザーのステータス更新の前に、ステータス更新からの情報が必要です。明らかに、id - 1 のステータス更新を単純に見つけることはできません。そのステータス更新は別のユーザーに属している可能性があり、手元にあるユーザーのステータス更新が存在しないため、とにかく nil を返すためです。
以前に作成されたユーザーのステータス更新を簡単に見つけるために、where() 引数を記述する方法がわかりません。
スー...
この質問に関する私のモデルの重要な部分は次のとおりです。
after_find :previous_status_update
.
.
.
def previous_status_update
current_id = self.id
previous_status_update = user.status_update.where( created_at: ? < self.created_at ).limit(1)
end
guides.rubyonrails.org の説明は、この引数の記述に関してはわかりにくいものです。
ご協力いただきありがとうございます!