I'm making a game link site, where users can post links to their favorite web game. When people post games they are supposed to check what category the game falls into. I decided to allow many categories for each game since some games can fall into many categories. So the question is, how do I handle this in my view? And how can I show it as Checkboxes, where at least one has to be checked? And how can I show this as checkboxes in the Admin as well?
class Category(models.Model):          category = models.CharField(max_length=200)          def __unicode__(self):                  return self.category  class Game(models.Model):      name = models.CharField(max_length=200)      url = models.CharField(max_length=200)      poster = models.ForeignKey(User, related_name='game_poster_set')      postdate = models.DateTimeField(default=datetime.now)      cats = models.ManyToManyField(Category)      hits = models.IntegerField(default=0)      post = models.BooleanField(default=False)  def submit(request):          form = GameForm(request.POST or None)          if form.is_valid():                  game = form.save(commit=False)                  game.poster = request.user                  game.save()                  next = reverse('gamesite.games.views.favorites')                  return HttpResponseRedirect(next)          return render_to_response(          'games/submit.html',          {'form': form},          context_instance = RequestContext(request),) class GameForm(forms.ModelForm):          name = forms.CharField(max_length=15, label='Name')          url = forms.URLField(label='URL', initial='http://')          class Meta:                  model = Game                  fields = ('name','url') Thanks!
class GameForm(forms.ModelForm):          name = forms.CharField(max_length=15, label='Name')          url = forms.URLField(label='URL', initial='http://')          cats = forms.ModelMultipleChoiceField(             queryset=Category.objects.all(),             widget=forms.CheckboxSelectMultiple,             required=True)          class Meta:                  model = Game                  fields = ('name','url','cats') that should fix your view, but i'm not sure about the admin. still looking... will edit if i find anything.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With