Ok, well I took at look at the two links and they were pretty much the
same thing; just access to the choice list as text, not the checkbox
generator.

I was able to generate the checkboxes manually, but they break the
form system silently and just don't work (don't map to the usertype
object for some reason). The field id's are _exactly_ the same, so I
have no clue how Django is fetching their values from the POST. /shrug

This is as far as I got if anyone wants to expand (usertype is my
checkboxselectmultiple field):

{% for choice_id, choice_label in form.usertype.field.choices %}
    <tr>
        <td>
            <label for="id_usertype_{{ forloop.counter0 }}"><input
type="checkbox" name="usertype"
                value="{{ choice_id }}" id="id_usertype_
{{ forloop.counter0 }}" />
            {{ choice_label }}</label>
        </td>
    </tr>
{% endfor %}

It's very close in that it does extract the labels, but I really need
to be able to generate the individual _trackable_ checkbox fields
too... :/

I suppose the normal fix is to just build three checkboxes into my
form and modify my clean method to validate them. Easy enough, but I
really wanted to make Django do that for me so I could keep the line-
by-line error messages to make it clear to users where they goofed
(and without using JS magic 'cause that's another way to do it if you
go the "normal fix" route but I hate relying on things that can be
voluntarily disabled).

Thanks again,

-R

On May 25, 5:39 pm, Retro486 <russell.bernha...@gmail.com> wrote:
> Thanks, Richard. I'll take a look at the links you sent and see if I
> can't work something out. In the meantime I've dropped back to a
> MultipleChoiceField. :(
>
> I'll post my findings.
>
> -R
>
> On May 25, 9:03 am, Richard <screame...@gmail.com> wrote:
>
> > Hey Retro, I'm struggling with the same thing. I've found two
> > interesting links which take two different approaches although I can't
> > get either to quite work (I think the template is just not seeing the
> > actual control but it's not complaining loudly). But it's quite
> > possible that you'll be able to get it 
> > working:http://stackoverflow.com/questions/733880/iterate-over-choices-in-che......
>
> > Please post if you find a solution and I will if I get it first  :-)
>
> > Cheers.
>
> > On May 23, 9:48 pm, Retro486 <russell.bernha...@gmail.com> wrote:
>
> > > I'm using the CheckboxSelectMultiple widget in a MultipleChoiceField
> > > and I need more control over where the field labels go and the field
> > > themselves. So far this is the only field type I've had a problem
> > > with. I've spent at least a few hours trying to find info on the web
> > > to no avail.
>
> > > I can't figure out how to iterate over the list of choices in my
> > > template. Here's the snippet from my form object:
>
> > > USERTYPES = (
> > >         ('f', 'Fan'),
> > >         ('b', 'Band'),
> > >         ('v', 'Venue'),
> > >     )
> > >     usertype = forms.MultipleChoiceField(choices=USERTYPES,
> > >         widget=forms.CheckboxSelectMultiple())
>
> > > And here's the snippet from my template (I know the attributes don't
> > > exist; that's what my question is):
>
> > > {% for choice in form.usertype %}
> > >     <tr><td>{{ choice.label }}</td><td>{{ choice.field }}</td></tr>
> > > {% endfor %}
>
> > > Any ideas? The rest of the form works perfectly so assume all other
> > > variables are properly defined and are usable.
>
> > > Thanks!
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To post to this group, send email to django-users@googlegroups.com
To unsubscribe from this group, send email to 
django-users+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/django-users?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to