Staram się zdobyć mongoid, aby uratować stowarzyszenia, ale mogę uzyskać tylko jedną stronę do wykonania. Jeśli mam następujący test.Mongoid has_and_belongs_to_many asocjacje
test "should add a user as a follower when a user follows the group" do
@cali_group.followers = []
@user1.followed_groups << @cali_group
assert_equal 1, @user1.followed_groups.count
assert_equal 1, @cali_group.followers.count
end
To się nie udaje, ponieważ @ cali_group.followers jest []. Pracowałem z tym przez jakiś czas, wypróbowałem @cali_group.reload
. Wygląda jednak na to, że jedynym sposobem na zrobienie tego w moim kodzie jest praca na obu końcach połączenia, czyli @cali_group.followers << @user1
. Mogę to zrobić w moim kodzie, jeśli będę musiał.
Wzory polco_group i użytkownika są tutaj: https://gist.github.com/1195048
Pełny kod test jest tutaj: https://gist.github.com/1195052
Nie masz opcji: inverse_of po stronie użytkownika, może to powodować problemy. – rubish
Dobra rada, zajrzę do tego – bonhoffer
hmm. . .still nie działa - ale potrzebne jest jakiekolwiek usprawnienie w każdym przypadku – bonhoffer