Yeah, those results seem good. I just added a bug to launchpad, along with a possible fix:
https://bugs.launchpad.net/webpy/+bug/130440 Cheers, Justin On Aug 4, 5:24 pm, keizo <[EMAIL PROTECTED]> wrote: > Thanks Justin, I didn't know that about dropdowns. I've edited > form.Radio to get this behavior: > > >>> a = form.Radio('format',[('value1','desc1'),('value2','desc2')]) > >>> a.render() > > '<span><input type="radio" name="format" value="value1" id="format" /> > desc1 <input type="radio" name="format" value="value2" id="format" /> > desc2 </span>'>>> b = form.Radio('name',['forms rule'],value='forms rule') > >>> b.render() > > '<span><input type="radio" name="name" value="forms rule" > checked="checked" id="name" /> forms rule </span>'>>> c = > form.Radio('name',[('value','desc'),'value2'],checked=True) > >>> c.render() > > '<span><input type="radio" name="name" value="value" checked="checked" > id="name" /> desc <input type="radio" name="name" value="value2" > id="name" /> value2 </span>' > > Does it look ok? > > On Aug 4, 9:11 am, Justin Davis <[EMAIL PROTECTED]> wrote: > > > Regarding the radio buttons, it is strange that they don't accept a > > tuple for desc/value like the Dropdown class does. For a dropdown, > > you can do this: > > > form.Dropdown('a', [('value1', 'desc1'), ('value2', 'desc2')]) > > > and it detects that they are tuples when it renders. I'm not sure why > > this isn't the case with radios, except possibly that they just aren't > > used very frequently. There probably should be labels on the > > descriptions also, as you point out. Any reason for this Aaron? > > > Regarding putting each radio on it's own row and doing other more > > obscure stuff, I'd say just create a subclass of Radio and override > > it's render function: eg... > > > class MyRadio(form.Radio): > > def render(self): > > x = '<ul style="list-style-type: none;">' > > for arg in self.args: > > if self.value == arg: select_p = ' checked="checked"' > > else: select_p = '' > > x += '<li><input type="radio" name="%s" value="%s"%s%s /> > > %s </li>' % (net.websafe(self.name), net.websafe(arg), select_p, > > self.addatts(), net.websafe(arg)) > > return x+'</ul>' > > > This is just an example (haven't tested it), but you get the idea. > > You can also sublcass the Form class and redo it's render function. > > > To add tags and fieldsets is possible, but a little more complicated > > because the Form class expects each input to have a name and value. > > You can fake this, but the form.d feature is no longer just a dict of > > the user's input. I like to do web.insert('mytable', **form.d) once > > everything's been validated, so a tags and fieldsets would mess with > > this. > > > Hope this helps, > > Justin > > > On Aug 4, 6:42 am, keizo <[EMAIL PROTECTED]> wrote: > > > > Hi, > > > > I'm trying to make a radio button similar to: > > > > <label class="option"><input type="radio" name="format" value="1" > > > checked="checked" class="form-radio" /> Filtered HTML</label> > > > <label class="option"><input type="radio" name="format" value="2" > > > class="form-radio" /> Markdown</label> > > > > I get close by:>>> a=form.Radio('format',[1,2]) > > > >>> a.render() > > > > '<span><input type="radio" name="format" value="1" id="format" /> 1 > > > <input type="radio" name="format" value="2" id="format" /> 2 </span>' > > > > But clearly I need to be able to label it something other than the > > > value 1 or 2. Any ideas? > > > > I think this will require some changes to form.py, but then again I > > > don't know much of anything. > > > > I also want to put each radio button on it's own row. Perhaps > > > something that looks like this would be good? ie similar to > > > checkboxes. > > > > a = form.Form( > > > form.Radio('format',value=1,description='Filter > > > HTML',checked=True,post='an explanation here'), > > > > form.Radio('format',value=2,description='Markdown',post='more info > > > here') > > > ) > > > > Anyway, just wanted to see if anyone's run into this before. See also > > > a bug I submitted about > > > checkboxes:https://bugs.launchpad.net/webpy/+bug/128233 > > > > Thanks for any assistance. > > > > Keizo > > > > ps. I have been rewriting my Drupal based site in python/webpy for > > > the past few weeks. Any suggestions for how to go about making it an > > > open source project? --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "web.py" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/webpy?hl=en -~----------~----~----~----~------~----~------~--~---
