I've used NullBooleanField for this before, as well. A lot quicker to query on than a ManyToMany, also.
On Tuesday, July 16, 2013 9:24:54 PM UTC-4, donarb wrote: > > On Tuesday, July 16, 2013 5:29:47 PM UTC-7, Victor Hooi wrote: >> >> Hi, >> >> We have a list of users, who are going to like/dislike various widgets. >> >> My question is regarding how to store the like/dislikes. >> >> Essentially, there can be three states between a user and a widget - >> like, dislike, and unrated, so it's not just a straight Boolean. >> >> I'm thinking of just doing a M2M between user and widgets models, and >> then storing an extra field on that M2M. >> >> I can either store a Boolean, for whether the item is liked/unliked - and >> then an unrated item simply won't be exist in the table. >> >> Or I can store a integer (with a choice tupled defined), with say >> 0=unrated, 1=like, 2 = unlike, and all possible combinations are listed. >> >> We'll be doing queries to compare users, and see if their likes/dislikes >> intersect. >> >> Are there any pros/cons of the two approaches for this given query, or is >> there perhaps a more efficient way of storing this data? >> >> Cheers, >> Victor >> > > > > Django has a NullBooleanField that allows 3 states, Unknown (null), True, > False. > > > -- You received this message because you are subscribed to the Google Groups "Django users" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/django-users. For more options, visit https://groups.google.com/groups/opt_out.

