10

ととしてユーザーの関連付けがありuser has_many agentsますagent belongs_to userRailsコンソールで、さまざまなユーザーを使用して特定のシナリオをテストしようとしていますが、エージェントのないユーザーが必要なため、user.agents. 試してみuser.agents.map(&:destroy)ましたが、エラーが発生しますActiveRecord::StaleObjectError: Attempted to delete a stale object.iでも試しuser.agents.delete_allましたが、機能しません.レールコンソールで単一のコマンドでユーザーエージェントを削除できますか.

4

4 に答える 4

23

destroyすべてのRailsマジック(コールバックなど)を通過するため、使用することをお勧めします

user.destroy #For a single record
user.agents.destroy_all #For a collection
于 2013-07-19T10:36:09.070 に答える
1

これは私のために働く

user.agents.find_each(&:destroy)
于 2017-08-29T08:58:52.233 に答える