Modeling User to User connections in Django
up vote
0
down vote
favorite
I have an User object and a Connection object to manage connections between users.
class User:
username = models.CharField(max_length=100,)
and
class Connection:
user = models.ForeignKey(User)
friend = models.ManyToManyField('self', related_name="_friends", symmetrical=True)
followers = models.ManyToManyField('self', related_name="_followers", symmetrical=False)
following = models.ManyToManyField('self', related_name="_following", symmetrical=False)
I'm not sure how to add friends in this modeling.
user.connection_set._friends.add(target) -> does this work?
Can someone help me with this.
python django django-models
add a comment |
up vote
0
down vote
favorite
I have an User object and a Connection object to manage connections between users.
class User:
username = models.CharField(max_length=100,)
and
class Connection:
user = models.ForeignKey(User)
friend = models.ManyToManyField('self', related_name="_friends", symmetrical=True)
followers = models.ManyToManyField('self', related_name="_followers", symmetrical=False)
following = models.ManyToManyField('self', related_name="_following", symmetrical=False)
I'm not sure how to add friends in this modeling.
user.connection_set._friends.add(target) -> does this work?
Can someone help me with this.
python django django-models
Connections are following connections? Shouldn't these connections just have twoUser
s?
– Willem Van Onsem
Nov 9 at 18:00
I want to use an intermittent object to manage UserConnections. If I haven't modeled it right, can you tell me the best way to model this?
– Melissa Stewart
Nov 9 at 18:01
add a comment |
up vote
0
down vote
favorite
up vote
0
down vote
favorite
I have an User object and a Connection object to manage connections between users.
class User:
username = models.CharField(max_length=100,)
and
class Connection:
user = models.ForeignKey(User)
friend = models.ManyToManyField('self', related_name="_friends", symmetrical=True)
followers = models.ManyToManyField('self', related_name="_followers", symmetrical=False)
following = models.ManyToManyField('self', related_name="_following", symmetrical=False)
I'm not sure how to add friends in this modeling.
user.connection_set._friends.add(target) -> does this work?
Can someone help me with this.
python django django-models
I have an User object and a Connection object to manage connections between users.
class User:
username = models.CharField(max_length=100,)
and
class Connection:
user = models.ForeignKey(User)
friend = models.ManyToManyField('self', related_name="_friends", symmetrical=True)
followers = models.ManyToManyField('self', related_name="_followers", symmetrical=False)
following = models.ManyToManyField('self', related_name="_following", symmetrical=False)
I'm not sure how to add friends in this modeling.
user.connection_set._friends.add(target) -> does this work?
Can someone help me with this.
python django django-models
python django django-models
asked Nov 9 at 17:59
Melissa Stewart
744622
744622
Connections are following connections? Shouldn't these connections just have twoUser
s?
– Willem Van Onsem
Nov 9 at 18:00
I want to use an intermittent object to manage UserConnections. If I haven't modeled it right, can you tell me the best way to model this?
– Melissa Stewart
Nov 9 at 18:01
add a comment |
Connections are following connections? Shouldn't these connections just have twoUser
s?
– Willem Van Onsem
Nov 9 at 18:00
I want to use an intermittent object to manage UserConnections. If I haven't modeled it right, can you tell me the best way to model this?
– Melissa Stewart
Nov 9 at 18:01
Connections are following connections? Shouldn't these connections just have two
User
s?– Willem Van Onsem
Nov 9 at 18:00
Connections are following connections? Shouldn't these connections just have two
User
s?– Willem Van Onsem
Nov 9 at 18:00
I want to use an intermittent object to manage UserConnections. If I haven't modeled it right, can you tell me the best way to model this?
– Melissa Stewart
Nov 9 at 18:01
I want to use an intermittent object to manage UserConnections. If I haven't modeled it right, can you tell me the best way to model this?
– Melissa Stewart
Nov 9 at 18:01
add a comment |
1 Answer
1
active
oldest
votes
up vote
1
down vote
Use a OneToOne (i guess your User has only one Connection with multiple followers, friends etc?)
If you use a FK or m2m field you need one more step to find which Connection you will use (something like User.objects.get(XXXX).connection.get(XXXX)
class User:
username = models.CharField(max_length=100,)
class Connection:
user = models.OneToOneField(User)
friend = models.ManyToManyField('self', related_name="_friends", symmetrical=True)
followers = models.ManyToManyField('self', related_name="_followers", symmetrical=False)
following = models.ManyToManyField('self', related_name="_following", symmetrical=False)
user = User.objects.last()
user_to_add = User.objects.first()
user.connection.followers.add(user_to_add)
add a comment |
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
1
down vote
Use a OneToOne (i guess your User has only one Connection with multiple followers, friends etc?)
If you use a FK or m2m field you need one more step to find which Connection you will use (something like User.objects.get(XXXX).connection.get(XXXX)
class User:
username = models.CharField(max_length=100,)
class Connection:
user = models.OneToOneField(User)
friend = models.ManyToManyField('self', related_name="_friends", symmetrical=True)
followers = models.ManyToManyField('self', related_name="_followers", symmetrical=False)
following = models.ManyToManyField('self', related_name="_following", symmetrical=False)
user = User.objects.last()
user_to_add = User.objects.first()
user.connection.followers.add(user_to_add)
add a comment |
up vote
1
down vote
Use a OneToOne (i guess your User has only one Connection with multiple followers, friends etc?)
If you use a FK or m2m field you need one more step to find which Connection you will use (something like User.objects.get(XXXX).connection.get(XXXX)
class User:
username = models.CharField(max_length=100,)
class Connection:
user = models.OneToOneField(User)
friend = models.ManyToManyField('self', related_name="_friends", symmetrical=True)
followers = models.ManyToManyField('self', related_name="_followers", symmetrical=False)
following = models.ManyToManyField('self', related_name="_following", symmetrical=False)
user = User.objects.last()
user_to_add = User.objects.first()
user.connection.followers.add(user_to_add)
add a comment |
up vote
1
down vote
up vote
1
down vote
Use a OneToOne (i guess your User has only one Connection with multiple followers, friends etc?)
If you use a FK or m2m field you need one more step to find which Connection you will use (something like User.objects.get(XXXX).connection.get(XXXX)
class User:
username = models.CharField(max_length=100,)
class Connection:
user = models.OneToOneField(User)
friend = models.ManyToManyField('self', related_name="_friends", symmetrical=True)
followers = models.ManyToManyField('self', related_name="_followers", symmetrical=False)
following = models.ManyToManyField('self', related_name="_following", symmetrical=False)
user = User.objects.last()
user_to_add = User.objects.first()
user.connection.followers.add(user_to_add)
Use a OneToOne (i guess your User has only one Connection with multiple followers, friends etc?)
If you use a FK or m2m field you need one more step to find which Connection you will use (something like User.objects.get(XXXX).connection.get(XXXX)
class User:
username = models.CharField(max_length=100,)
class Connection:
user = models.OneToOneField(User)
friend = models.ManyToManyField('self', related_name="_friends", symmetrical=True)
followers = models.ManyToManyField('self', related_name="_followers", symmetrical=False)
following = models.ManyToManyField('self', related_name="_following", symmetrical=False)
user = User.objects.last()
user_to_add = User.objects.first()
user.connection.followers.add(user_to_add)
answered Nov 9 at 18:53
Bast
372111
372111
add a comment |
add a comment |
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53231054%2fmodeling-user-to-user-connections-in-django%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Connections are following connections? Shouldn't these connections just have two
User
s?– Willem Van Onsem
Nov 9 at 18:00
I want to use an intermittent object to manage UserConnections. If I haven't modeled it right, can you tell me the best way to model this?
– Melissa Stewart
Nov 9 at 18:01