Если я правильно понял ваш вопрос, эта скринкаст - это то, что вам нужно.
Обновлено
Хотя вы говорите, что нет, я думаю, вам нужносамореферентное отношение «многие ко многим».Вместо того чтобы связывать ожидающие запросы, вы можете создать именованную область.И после этого вы можете получить всех приглашенных вами друзей по User.find(params[:id]).friends.accepted
.
Что я не могу понять, так это то, хотите ли вы, чтобы user.friends извлекал как приглашенных мной, так и приглашенных мнойИЛИ только один из них.
Из-за ваших имен (приглашающий и приглашенный), я полагаю, это второй случай.Это покрыто в скринкасте.Это делается путем создания дополнительной перевернутой ассоциации (Райан говорит об этом в конце).
Но если это будет первое, самым простым решением будет сделать две строки для каждого приглашающего.приглашенная пара.Вы можете использовать этот gem для упрощения вещей, но он действует так же, как я сказал.
Если это не поможет, попробуйте задать свой вопрос.