Я случайно создал повторяющиеся отношения ... теперь мне нужно их удалить. У нас есть сумасшедшие вещи в зашифрованном ответе здесь как с помощью cypher удалить повторяющиеся отношения между двумя узлами?
Сначала я задумался о том, чтобы найти отношения, а затем проверить их счет. Но это только в том случае, если я уже знаю два узла.
Мысли?
Обновить
Возможно, мне что-то не хватает, но я не думаю, что это укажет мне на дублирование user.friends.count > 1
, поскольку это будет подсчитывать узлы. Я бы не знал, какие узлы считаются дважды
Единственный способ, которым я могу привлечь другого пользователя, - это выполнить второй цикл. Я думаю, это могло бы сработать, если бы first_rel_to
и match_to
можно было бы использовать непосредственно для пользователя без прокси-сервера запроса.
User.all.each do |user|
user.friends.each do |friend|
user.first_rel_to(friend).destroy if (user.match_to(friend).count > 1)
end
end
Итак .. это должно быть сделано ...?
Ответ: Да, это необходимо сделать
User.all.each do |user|
user.friends.each do |friend|
user.friends.first_rel_to(friend).destroy if (user.friends.match_to(friend).count > 1)
end
end
user.friends.count
возвращает количество друзей, возвращенных этим запросом, а не отдельных друзей. - person subvertallchris   schedule 23.01.2015